Unit: lxHandleX
具備公式範圍、快取值、資料標籤、趨勢線集合與 X/Y 誤差線的圖表數列
Description
數列會保留其顯示名稱、選擇性的名稱公式、類別或 X 公式、值或 Y 公式、氣泡大小公式,以及儲存在每條公式旁的字串或數值快取;快取點可支援離線轉譯,並能在圖表編輯、工作表複製與開檔-存檔循環之間留存
Series markers and smoothing
property MarkerFillColor: LongWord;
property MarkerBorderColor: LongWord;
property Smooth: Boolean;
property SmoothSet: Boolean;
property LegendDeleted: Boolean;
| MarkerFillColor | 折線圖/散佈圖數列標記的填滿色彩,以 RGB LongWord 表示;0 保留 Excel 的自動佈景主題色彩 |
| MarkerBorderColor | 數列標記的框線色彩,以 RGB LongWord 表示 |
| Smooth | True 時數列以平滑曲線而非直線線段轉譯;搭配 MarkerSymbol/MarkerSize/MarkerSet 使用 |
| SmoothSet | 平滑旗標是否已被明確設定,用來控管 OOXML smooth 旗標是否寫出 |
| LegendDeleted | True 時將此數列從圖例中移除但仍保留繪製,並為其數列索引寫出 c:legendEntry 刪除項目 |
Multi-level categories
property CategoriesMultiLevel: Boolean;
property CategoryLevelCount: Integer;
property CategoryLevels[Index: Integer]: TXLSXChartDataCache;
function AddCategoryLevel: TXLSXChartDataCache;
procedure ClearCategoryLevels;
procedure ResolveCategoryLevels;
function BuildCategorySpans(APointCount: Integer;
out ASpans: TXLSXChartCategorySpans): Integer;
類別層級以葉節點在前的順序排列,與 ChartML 的實體快取順序一致;每個層級都是一份稀疏的索引字串快取。缺少的資料點會沿用該層級中前一個標籤,而明確儲存的空字串則會開啟一段空跨度,避免相鄰群組被合併在一起
ResolveCategoryLevels 會將可存取的二維類別範圍具體化一次,除此之外保留匯入的快取;BuildCategorySpans 以 O(levels × points) 的時間傳回感知父層的跨度,讓相同的子文字只會在同一個父跨度內合併
Cell-sourced data labels
property DataLabelsRange: WideString;
property DataLabelsCache: TXLSXChartDataCache;
property ShowDataLabelsRange: Boolean;
property ShowDataLabelsRangeSet: Boolean;
property SeparatorSet: Boolean;
property DataLabelRangeOverrideCount: Integer;
property DataLabelRangeOverrideIndexes[Index: Integer]: Integer;
property DataLabelRangeOverrideValues[Index: Integer]: Boolean;
procedure ResolveDataLabelsRange;
procedure SetPointShowDataLabelsRange(APointIndex: Integer;
AVisible: Boolean);
procedure ClearPointShowDataLabelsRangeOverrides;
function TryGetPointShowDataLabelsRange(APointIndex: Integer;
out AVisible: Boolean): Boolean;
DataLabelsRange 是每個數列各自的 A1 公式,DataLabelsCache 則保留與圖表一併儲存的索引文字;可存取的內部工作表範圍會在每個活頁簿世代重新整理一次,而無法存取或外部的公式會保留匯入的快取,絕不觸發隱含的檔案或網路存取
ShowDataLabelsRangeSet 會保留共用可見性是否明確存在的資訊,各點方法則維護稀疏、以 0 為基數的可見性覆寫。自訂儲存格文字會排在數列名稱、類別、值、百分比與氣泡大小等元件之前,分隔符只插入在非空元件之間
TXLSXChart.DataLabelsRange 仍是一層相容性門面:其 setter 會廣播到既有數列,並為之後新增的數列提供初值;其 getter 只有在所有數列都使用同一條公式時才會傳回值
Properties
Name
NameRange
CategoriesRange
ValuesRange
BubbleSizeRange
DataLabelsRange
NameCache
CategoryCache
CategoriesMultiLevel
CategoryLevelCount
CategoryLevels
ValueCache
BubbleSizeCache
DataLabelsCache
DataLabelRangeOverrideCount
DataLabelRangeOverrideIndexes
DataLabelRangeOverrideValues
TrendlineCount
Trendlines
ErrBarX
ErrBarY
ShowValue
ShowCategoryName
ShowSeriesName
ShowLegendKey
ShowPercent
ShowBubbleSize
ShowDataLabelsRange
ShowDataLabelsRangeSet
Separator
SeparatorSet
MarkerFillColor
MarkerBorderColor
Smooth
SmoothSet
LegendDeleted
Cached points
把快取種類設為 xlsxChartCacheString 或 xlsxChartCacheNumber,數值資料可視需要設定 FormatCode,然後加入以索引編號的資料點;沒有明確格式代碼的數值快取,寫入時會使用 General
Methods
procedure Assign
function AddTrendline
function AddErrorBar
function AddCategoryLevel
procedure ClearCategoryLevels
procedure ResolveCategoryLevels
function BuildCategorySpans
procedure ResolveDataLabelsRange
procedure SetPointShowDataLabelsRange
procedure ClearPointShowDataLabelsRangeOverrides
function TryGetPointShowDataLabelsRange
See also