Dokumentacja HotXLS

Klasy TXLSXChart i TXLSXCharts

TXLSXCharts to kolekcja osadzonych wykresów udostępniana przez TXLSXWorksheet.Charts , a TXLSXChart odpowiada za położenie wykresu, osie i serie

Deklaracje

function TXLSXCharts.Add: TXLSXChart; overload;
function TXLSXCharts.Add(AChartType: TXLSXChartType; const ATitle: WideString; AFromRow, AFromCol, AToRow, AToCol: Integer): TXLSXChart; overload;
function TXLSXChart.AddSeries(const AName, ACategories, AValues: WideString): TXLSXChartSeries;
function TXLSXChart.AddPlotGroup(AChartType: TXLSXChartType; AAxisGroup: TXLSXChartAxisGroup = xlsxAxisPrimary): TXLSXChartPlotGroup;
procedure TXLSXChart.ClearSeries;
procedure TXLSXChart.ClearPlotGroups;
procedure TXLSXChart.ClearPreservedXml;
property TXLSXChart.ChartType: TXLSXChartType;
property TXLSXChart.HasPreservedXml: Boolean;
property TXLSXChart.CategoryAxis, ValueAxis: TXLSXChartAxis;
property TXLSXChart.SecondaryCategoryAxis, SecondaryValueAxis: TXLSXChartAxis;
property TXLSXChart.SeriesAxis: TXLSXChartAxis;
property TXLSXChart.TitleTextStyle, LegendTextStyle: TXLSXChartTextStyle;
property TXLSXChart.PlotAreaLayout, TitleLayout, LegendLayout: TXLSXChartLayout;
property TXLSXChart.ShowLegend, TitleOverlay, LegendOverlay: Boolean;
property TXLSXChart.LegendPosition: TXLSXChartLegendPosition;
property TXLSXChart.Series[Index: Integer]: TXLSXChartSeries;
property TXLSXChart.PlotGroups[Index: Integer]: TXLSXChartPlotGroup;
property TXLSXChart.RadarStyle: TXLSXChartRadarStyle;
property TXLSXChart.HoleSize, FirstSliceAng: Integer;
property TXLSXChart.OfPieType: TXLSXChartOfPieType;
property TXLSXChart.OfPieSplitType: TXLSXChartOfPieSplitType;
property TXLSXChart.OfPieSplitPos, OfPieSecondPieSize, OfPieGapWidth: Integer;
property TXLSXChart.RoundedCorners, AutoTitleDeleted: Boolean;
property TXLSXChart.ChartBackgroundColor, ChartBorderColor, PlotAreaBackgroundColor: LongWord;
property TXLSXChart.ProtectionEnabled: Boolean;
property TXLSXChart.ProtectedChartObjects, ProtectedDataEditing, ProtectedFormatting, ProtectedSelection, ProtectedUserInterface: Boolean;
property TXLSXChart.ShowDataTableHorzBorder, ShowDataTableVertBorder, ShowDataTableOutline: Boolean;
property TXLSXChart.HasDropLines, HasSeriesLines: Boolean;
property TXLSXChart.OwnerSheet: TXLSXWorksheet;

Elementy składowe wykresu

Title, CategoryAxisTitle and ValueAxisTitleTekst tytułu wykresu i podpisów głównych osi
TitleTextStyle and TitleLayoutCzcionka tytułu wykresu, kolor, styl, obrót, nałożenie i ręczne ustawienie pozycji — wszystko typowane
ShowLegend, LegendPosition, LegendTextStyle and LegendLayoutWidoczność legendy, jej strona, nałożenie, czcionka i ręczne ustawienie pozycji
PlotAreaLayoutRęcznie zadany wewnętrzny lub zewnętrzny prostokąt obszaru rysunku w znormalizowanych współrzędnych ChartML
FromRow, FromCol, ToRow and ToColProstokąt kotwiczenia w arkuszu, numeracja od 1
CategoryAxis and ValueAxisGłówna oś kategorii (X) i główna oś wartości (Y)
SecondaryCategoryAxis and SecondaryValueAxisOś górna i prawa, używane przez drugorzędne grupy wykresów
SeriesAxisOś głębokości używana przez trójwymiarowe wykresy kategorii
PlotGroupsUporządkowane grupy rodzin wykresów, które umożliwiają tworzenie wykresów kombinowanych, podczas gdy Series pozostaje płaskim widokiem do celów zgodności
HasPreservedXmlInformuje, czy wykres zachowuje oryginalny ChartML na potrzeby round-tripów bezpiecznych dla rozszerzeń
ShowDataTable and ShowDataTableKeysSterowanie wyświetlaniem tabeli danych
ShowDataTableHorzBorder, ShowDataTableVertBorder and ShowDataTableOutlineNiezależne przełączniki obramowania tabeli danych zapisywane jako c:showHorzBorder, c:showVertBorderi c:showOutline; wszystkie trzy mają domyślnie wartość True
HasDropLines and HasSeriesLinesLinie upustu na wykresie liniowym łączą każdy punkt z osią kategorii; linie serii łączą segmenty serii na wykresach skumulowanych
HasUpDownBars, UpDownGapWidth and HasHiLowLinesElementy wyświetlania wykresów liniowych i giełdowych
Rotation3DX, Rotation3DY, Elevation3D, Perspective3D and RightAngleAxes3DSterowanie widokiem wykresu 3D
HeightPercent3D, DepthPercent3D and GapDepth3DProcentowe wartości wysokości i głębokości obszaru rysunku oraz odstępów między seriami w wykresach 3D
RadarStyleWariant rodziny wykresów radarowych dla bieżącego typu wykresu
HoleSize and FirstSliceAngProcent promienia wewnętrznego wykresu pierścieniowego (10..90) oraz kąt początkowy w stopniach dla wykresów kołowych i pierścieniowych
OfPieType, OfPieSplitType, OfPieSplitPos, OfPieSecondPieSize and OfPieGapWidthUkład wykresów pie of pie i bar of pie, reguła podziału oraz rozmiary głównego i drugorzędnego obszaru rysunku
RoundedCornersWłącza lub wyłącza zaokrąglone rogi przestrzeni wykresu
AutoTitleDeletedPomija automatyczny tytuł wywodzony z nazwy pojedynczej serii i zapisuje c:autoTitleDeleted
ChartBackgroundColor, ChartBorderColor and PlotAreaBackgroundColorKolory wypełnienia i obramowania wykresu oraz obszaru rysunku jako wartości $RRGGBB; 0 zachowuje domyślny motyw
ProtectionEnabled, ProtectedChartObjects, ProtectedDataEditing, ProtectedFormatting, ProtectedSelection and ProtectedUserInterfacePrzełącznik ochrony wykresu oraz poszczególne ograniczenia edycji, zapisywane jako c:protection
OwnerSheetReferencja tylko do odczytu do arkusza, który jest właścicielem tego wykresu

Typy wykresów i grupy kombinowane

TXLSXChartType obejmuje rodziny: kolumnowy, słupkowy, liniowy, kołowy, obszarowy, pierścieniowy, punktowy, bąbelkowy, radarowy, giełdowy, pie of pie, powierzchniowy, powierzchniowy 3D, kolumnowy 3D, słupkowy 3D, liniowy 3D, kołowy 3D i obszarowy 3D
Pierwsza grupa wykresów to grupa zgodności, obsługiwana przez ChartType i AddSeries Dodatkowe grupy dodaje się metodą AddPlotGroup , a korzystać mogą z xlsxAxisPrimary albo xlsxAxisSecondary

Serie, linie trendowe i słupki błędów

function TXLSXChartSeries.AddTrendline(AType: TXLSXChartTrendlineType): TXLSXChartTrendline;
function TXLSXChartSeries.AddErrorBar(ADir: TXLSXChartErrDir): TXLSXChartErrBar;
property TXLSXChartSeries.Trendlines[Index: Integer]: TXLSXChartTrendline;
property TXLSXChartSeries.ErrBarX, ErrBarY: TXLSXChartErrBar;
property TXLSXChartTrendline.TrendlineType: TXLSXChartTrendlineType;
property TXLSXChartTrendline.DispEq, DispRSqr: Boolean;
property TXLSXChartTrendline.Order, Period: Integer;
property TXLSXChartErrBar.ValueType: TXLSXChartErrValType;
property TXLSXChartErrBar.Value, PlusValue, MinusValue: Double;
TrendlineTypeLiniowa, wykładnicza, logarytmiczna, wielomianowa lub potęgowa linia trendowa albo średnia krocząca
DispEq and DispRSqrWyświetla na wykresie równanie i wartość R-kwadrat
Order and PeriodRząd wielomianu lub okres średniej kroczącej, stosownie do typu linii trendowej
ValueTypeWartość stała, procent, odchylenie standardowe, błąd standardowy lub własna wielkość błędu
NoEndCapUkrywa ogranicznik na końcu słupka błędu

Elementy osi i etykiet danych

LogBase and OrientationPodstawa skali logarytmicznej oraz normalna lub odwrócona kolejność osi
MajorGridlines and MinorGridlinesSterowanie widocznością linii siatki
MinValue, MaxValue, MajorUnit and MinorUnitJawne granice skali i odstępy znaczników, tam gdzie są obsługiwane
CrossesAt, TickLblPos and DispUnitsPozycja przecięcia osi, rozmieszczenie etykiet i jednostki wyświetlania
ShowValue, ShowCategoryName, ShowSeriesName, ShowLegendKey, ShowPercent and ShowBubbleSizeSkładniki etykiet danych dla poszczególnych serii
SeparatorTekst wstawiany między wieloma wyświetlanymi składnikami etykiety danych

Zachowywanie nieobsługiwanego ChartML

Gdy TXLSXWorkbook.PreserveUnsupportedParts jest włączony — a domyślnie jest — zaimportowany wykres zachowuje swój oryginalny ChartML Niezmieniony wykres odtwarza ten XML bez normalizacji, natomiast zmiany właściwości typowanych nakładają wygenerowany model HotXLS na oryginalne drzewo
Nieznane przestrzenie nazw, element zgodności znaczników AlternateContent, listy rozszerzeń, style niestandardowe i formatowanie spoza modelu pozostają przypięte do oryginalnych obiektów wykresu podczas edycji znanych właściwości Wywołaj ClearPreservedXml , aby odrzucić zachowany XML jednego wykresu i wygenerować go ponownie wyłącznie na podstawie właściwości typowanych

Przykład

var
  Chart: TXLSXChart;
  Secondary: TXLSXChartPlotGroup;
begin
  Chart := Sheet.Charts.Add(xlsxChartLine, 'Monthly sales', 2, 5, 18, 12);
  Chart.AddSeries('Sales', 'Sheet1!$A$2:$A$13', 'Sheet1!$B$2:$B$13');
  Chart.ValueAxisTitle := 'Amount';
  Chart.TitleTextStyle.Name := 'Aptos Display';
  Chart.TitleTextStyle.Size := 18;
  Chart.TitleTextStyle.Bold := True;
  Chart.PlotAreaLayout.Target := xlsxChartLayoutInner;
  Chart.PlotAreaLayout.SetPositionAndSize(0.12, 0.18, 0.72, 0.64);
  Chart.ShowLegend := True;
  Chart.LegendPosition := xlsxChartLegendBottom;
  Chart.LegendTextStyle.Size := 10;
  Secondary := Chart.AddPlotGroup(xlsxChartColumn, xlsxAxisSecondary);
  Secondary.AddSeries('Margin', 'Sheet1!$A$2:$A$13', 'Sheet1!$C$2:$C$13');
  Chart.SecondaryValueAxis.Title := 'Margin percent';
  Chart.Series[0].AddTrendline(xlsxTrendLinear).DispRSqr := True;
  Chart.Series[0].ShowValue := True;
end;

Zobacz też