Komponent TreeMap — sgcHTML | eSeGeCe

TreeMap

TsgcHTMLComponent_TreeMap — renderuje mapę drzewa (treemap) typu squarified jako samodzielny, generowany po stronie serwera inline SVG, bez potrzeby biblioteki wykresów, w Delphi, C++ Builder i .NET.

TsgcHTMLComponent_TreeMap

Dodaj elementy z etykietą i wartością (lub powiąż zestaw danych), wybierz schemat kolorów, a następnie odczytaj właściwość HTML.

Klasa komponentu

TsgcHTMLComponent_TreeMap

Renderuje

Samodzielny inline SVG, układ squarified

Języki

Delphi, C++ Builder, .NET

Dodaj elementy, wyrenderuj

Wywołaj AddItem dla każdego prostokąta, wybierz ColorScheme, a następnie odczytaj HTML. Układ jest obliczany po stronie serwera i nie wymaga żadnej biblioteki po stronie klienta.

uses
  sgcHTML_Component_TreeMap;

var
  oTreeMap: TsgcHTMLComponent_TreeMap;
begin
  oTreeMap := TsgcHTMLComponent_TreeMap.Create(nil);
  try
    oTreeMap.Width := 640;
    oTreeMap.Height := 360;
    oTreeMap.ColorScheme := tmCool;
    oTreeMap.ShowValues := True;

    oTreeMap.AddItem('Engineering', 420000);
    oTreeMap.AddItem('Sales', 260000);
    oTreeMap.AddItem('Marketing', 140000);
    oTreeMap.AddItem('Support', 90000, '#20c997');   // explicit colour overrides the scheme

    WebModule.Response := oTreeMap.HTML;   // <svg> squarified rectangles, no client-side library
  finally
    oTreeMap.Free;
  end;
end;

// Or bind it straight to a dataset:
oTreeMap.LoadFromDataSet(qryBudget, 'Department', 'Amount');

// One-shot helper, no instance to manage:
Response := TsgcHTMLComponent_TreeMap.Build(['Engineering', 'Sales'], [420000, 260000]);
// includes: sgcHTML_Component_TreeMap.hpp

TsgcHTMLComponent_TreeMap *oTreeMap = new TsgcHTMLComponent_TreeMap(NULL);
try
{
  oTreeMap->Width = 640;
  oTreeMap->Height = 360;
  oTreeMap->ColorScheme = tmCool;
  oTreeMap->ShowValues = true;

  oTreeMap->AddItem("Engineering", 420000);
  oTreeMap->AddItem("Sales", 260000);
  oTreeMap->AddItem("Marketing", 140000);
  oTreeMap->AddItem("Support", 90000, "#20c997");   // explicit colour overrides the scheme

  String html = oTreeMap->HTML;   // <svg> squarified rectangles, no client-side library
}
__finally
{
  delete oTreeMap;
}
using esegece.sgcWebSockets;

var treeMap = new TsgcHTMLComponent_TreeMap();
treeMap.Width = 640;
treeMap.Height = 360;
treeMap.ColorScheme = TsgcHTMLTreeMapScheme.tmCool;
treeMap.ShowValues = true;

treeMap.AddItem("Engineering", 420000);
treeMap.AddItem("Sales", 260000);
treeMap.AddItem("Marketing", 140000);
treeMap.AddItem("Support", 90000, "#20c997");   // explicit colour overrides the scheme

string html = treeMap.HTML;   // <svg> squarified rectangles, no client-side library

// One-shot helper, no instance to manage:
string quick = TsgcHTMLComponent_TreeMap.Build(new[] { "Engineering", "Sales" }, new[] { 420000d, 260000d });

Kluczowe właściwości i metody

Składniki, po które sięgasz najczęściej.

Items / AddItem

AddItem(aLabel, aValue, aColor) dodaje prostokąt liścia; jawnie podany aColor zastępuje aktywny ColorScheme.

Hierarchia

Items obsługują dwupoziomową mapę drzewa: ustaw ID / ParentID na elementach nadrzędnych i podrzędnych, aby zagnieździć prostokąty potomne wewnątrz przygaszonego rodzica.

Wiązanie z zestawem danych

LoadFromDataSet(aDataSet, aLabelField, aValueField) wczytuje jeden płaski element na wiersz.

Funkcja pomocnicza jednorazowego użycia

Funkcja klasowa Build(aLabels, aValues) renderuje płaską mapę drzewa bezpośrednio do ciągu znaków, bez potrzeby zarządzania instancją komponentu.

Rozmiar i paleta

Width, Height, Padding i ColorScheme (default/blue/green/warm/cool/gray) kontrolują płótno oraz automatycznie przypisywane kolory prostokątów.

Etykiety

ShowLabels, ShowValues, MinLabelSize i FontSize decydują, kiedy i jak rysowany jest podpis prostokąta; HTML zwraca gotowy inline <svg>.

Poznawaj dalej

Pomoc onlinePełna dokumentacja API i przewodnik użytkowania tego komponentu.
Wszystkie komponenty sgcHTMLPrzejrzyj pełną matrycę funkcji 80+ komponentów.
Pobierz bezpłatną wersję próbną30-dniowa wersja próbna zawiera projekty demonstracyjne 60.HTML.
CennikLicencje Single, Team i Site z pełnym kodem źródłowym.

Gotowy, aby zacząć?

Pobierz bezpłatną wersję próbną i zacznij budować interfejsy webowe w Delphi, C++ Builder i .NET.