TXLSXCharts é a coleção de gráficos incorporados exposta por TXLSXWorksheet.Charts , e TXLSXChart controla a posição, os eixos e as séries do gráfico
Declarações
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;
Membros do gráfico
| Title, CategoryAxisTitle and ValueAxisTitle | Texto de legenda do gráfico e dos eixos primários |
| TitleTextStyle and TitleLayout | Fonte, cor, ênfase, rotação, sobreposição e posição manual do título do gráfico, com tipagem dedicada |
| ShowLegend, LegendPosition, LegendTextStyle and LegendLayout | Visibilidade, lado, sobreposição, fonte e posição manual da legenda |
| PlotAreaLayout | Retângulo de plotagem interno ou externo manual usando coordenadas ChartML normalizadas |
| FromRow, FromCol, ToRow and ToCol | Retângulo de ancoragem na planilha com índices baseados em um |
| CategoryAxis and ValueAxis | Eixo primário de categoria ou X e eixo primário de valores ou Y |
| SecondaryCategoryAxis and SecondaryValueAxis | Eixos superior e direito usados por grupos de plotagem secundários |
| SeriesAxis | Eixo de profundidade usado por gráficos de categoria tridimensionais |
| PlotGroups | Grupos ordenados por família de gráfico que tornam os gráficos combinados possíveis, enquanto Series permanece uma visão achatada de compatibilidade |
| HasPreservedXml | Informa se o gráfico mantém o ChartML original para round-trips seguros com extensões |
| ShowDataTable and ShowDataTableKeys | Controles de exibição da tabela de dados |
| ShowDataTableHorzBorder, ShowDataTableVertBorder and ShowDataTableOutline | Chaves independentes de borda da tabela de dados, emitidas como c:showHorzBorder, c:showVertBordere c:showOutline; as três assumem True por padrão |
| HasDropLines and HasSeriesLines | As linhas de queda dos gráficos de linha conectam cada ponto ao eixo de categoria; as linhas de série conectam segmentos de séries de barras ou linhas empilhadas |
| HasUpDownBars, UpDownGapWidth and HasHiLowLines | Controles de exibição de gráficos de linha e de ações |
| Rotation3DX, Rotation3DY, Elevation3D, Perspective3D and RightAngleAxes3D | Controles de exibição de gráficos tridimensionais |
| HeightPercent3D, DepthPercent3D and GapDepth3D | Percentuais de altura, profundidade e espaçamento entre séries da plotagem tridimensional |
| RadarStyle | Variante da família de gráfico de radar para o tipo de gráfico atual |
| HoleSize and FirstSliceAng | Percentual do raio interno da rosca (10..90) e o ângulo inicial em graus para gráficos de pizza e rosca |
| OfPieType, OfPieSplitType, OfPieSplitPos, OfPieSecondPieSize and OfPieGapWidth | Layout de pizza de pizza e barra de pizza, regra de divisão e tamanhos das plotagens primária e secundária |
| RoundedCorners | Alterna cantos arredondados no espaço do gráfico |
| AutoTitleDeleted | Suprime o título automático derivado do nome de uma única série e emite c:autoTitleDeleted |
| ChartBackgroundColor, ChartBorderColor and PlotAreaBackgroundColor | Cores de preenchimento e borda do gráfico e da área de plotagem como valores $RRGGBB; 0 mantém o padrão do tema |
| ProtectionEnabled, ProtectedChartObjects, ProtectedDataEditing, ProtectedFormatting, ProtectedSelection and ProtectedUserInterface | Chave de proteção do gráfico e as restrições individuais de edição que ela emite como c:protection |
| OwnerSheet | Referência somente leitura à planilha que contém este gráfico |
Tipos de gráfico e grupos de combinação
TXLSXChartType inclui as famílias coluna, barra, linha, pizza, área, rosca, dispersão, bolha, radar, ações, pizza de pizza, superfície, superfície 3D, coluna 3D, barra 3D, linha 3D, pizza 3D e área 3D
O primeiro grupo de plotagem é o grupo de compatibilidade controlado por ChartType e AddSeries Grupos adicionais são adicionados com AddPlotGroup e podem usar xlsxAxisPrimary ou xlsxAxisSecondary
Séries, linhas de tendência e barras de erro
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;
| TrendlineType | Linha de tendência linear, exponencial, logarítmica, polinomial, de potência ou média móvel |
| DispEq and DispRSqr | Mostra a equação e o valor R-quadrado no gráfico |
| Order and Period | Ordem polinomial ou período de média móvel para o tipo de linha de tendência correspondente |
| ValueType | Magnitude de erro fixa, percentual, de desvio padrão, de erro padrão ou personalizada |
| NoEndCap | Oculta a extremidade em qualquer lado de uma barra de erro |
Membros dos eixos e dos rótulos de dados
| LogBase and Orientation | Base da escala logarítmica e ordenação de eixo normal ou invertida |
| MajorGridlines and MinorGridlines | Controles de visibilidade das linhas de grade |
| MinValue, MaxValue, MajorUnit and MinorUnit | Limites de escala explícitos e espaçamento de ticks onde houver suporte |
| CrossesAt, TickLblPos and DispUnits | Posição de cruzamento do eixo, posicionamento dos rótulos e unidades de exibição |
ShowValue, ShowCategoryName, ShowSeriesName, ShowLegendKey, ShowPercent and ShowBubbleSize | Componentes de rótulos de dados por série |
| Separator | Texto usado entre vários componentes de rótulos de dados exibidos |
Preservando ChartML não suportado
Quando TXLSXWorkbook.PreserveUnsupportedParts está habilitado, que é o padrão, um gráfico importado retém seu ChartML original Um gráfico intacto reproduz esse XML sem normalização, enquanto mudanças em propriedades tipadas sobrepõem o modelo HotXLS gerado à árvore original
Namespaces desconhecidos, AlternateContentde markup-compatibility, listas de extensão, estilos personalizados e formatação não modelada permanecem anexados aos respectivos objetos de gráfico durante edições de propriedades conhecidas Chame ClearPreservedXml para descartar esse XML retido de um gráfico e regenerá-lo apenas a partir das propriedades tipadas
Exemplo
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;Veja também