翻譯|使用教程|編輯:王香|2019-05-10 11:18:41.000|閱讀 375 次
概述:TeeChart Pro將自動為您定義所有Axis標簽,并提供足夠的靈活性來定制您可能具有的任何特定要求。TeeChart Pro提供真正的多軸。這些可在設計或運行時使用,并為Axis定義提供無數可能性和靈活性。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
TeeChart Pro將自動為您定義所有Axis標簽,并提供足夠的靈活性來定制您可能具有的任何特定要求。TeeChart Pro提供真正的多軸。這些可在設計或運行時使用,并為Axis定義提供無數可能性和靈活性。
將Series數據添加到Chart時,會自動設置軸刻度。您可以使用Axis屬性在設計時或運行時更改默認值。
自動選擇最佳軸刻度范圍以適合您的數據。如果關閉“Automatic”,則“Scales”部分將激活選項,您可以更改“axis”值。重要的是,請記住從頁面左側的“Axis”菜單中選擇要配置的軸。
將行系列添加到圖表中添加一個命令按鈕,其中包含以下代碼:
procedure TForm1.BitBtn1Click(Sender: TObject); var t: Integer; begin For t := 0 To 40 do With Series1 do begin Add(Int(Random(t)), '', clRed); end; end;
在按鈕中運行代碼將繪制一個包含40個隨機值的Line Series。
在設計時轉到圖表編輯器。在Axis頁面的Bottom Axis scales部分中關閉Automatic'off'。您現在可以配置軸刻度的最大值和最小值。再次運行代碼將顯示值,具體取決于您為Axis配置的值。使用鼠標右鍵可以滾動查看剩余值。
您可以使用以下代碼在運行時更改最大值和最小值:
With Chart1.Axes.Bottom do begin Automatic := False; Maximum := 36; Minimum ;= 5; end;
您可以將Axis scale Maximum和Minimum設置為自動單獨。例如:
With Chart1.Axes.Bottom do begin AutomaticMaximum := True; Minimum := 5; end;
您可以定制Axis的間隔。從Axis頁面的Scales部分選擇Desired Increment組合框,并添加所需的增量。您可以在運行時通過代碼更改它:
Chart1.Axes.Bottom.Increment := 20;
如果您的數據是日期時間(您可以通過轉到“系列”,“常規”頁面將數據設置為系列的日期時間),“圖表”,“軸”頁面和“比例”部分將顯示日期時間范圍。從Desired Increment組合框中顯示的范圍中選擇 。
添加一些示例數據
for t := 1 To 25 do Series1.AddXY(EncodeDate(1998, 4, t), Random(t), '', clRed);
在運行時更改增量:
Chart1.Axes.Bottom.Increment := DateTimeStep[dtOneWeek];
標題在Axis頁面的標題部分設置。您可以更改Axis及其字體的標題文本。角度可以從值0,90,180,270度中選擇。有關運行時,請參閱TChartAxisTitle組件。
更改軸標簽頻率時,請記住TeeChart將根據LabelsSeparation屬性的設置避免標簽重疊。這意味著如果標簽頻率太高而不適合標簽,那么TeeChart將分配“最佳匹配”。更改標簽角度和標簽分離是2個選項,可幫助您安裝所需的標簽。請參閱標簽部分和LabelsAngle屬性。
您可以將所有標準數字和日期格式應用于Axis標簽。“軸”頁面的“標簽”部分包含“值格式”字段。如果您的數據是datetime,則字段名稱將更改為“Date time format”。在編輯器中拖動幫助“?” 在該字段上的圖標,以獲得完整的選項列表。在運行時使用:
Chart1.Axes.Bottom.AxisValuesFormat := '#,##0.00;(#,##0.00)'; //or for Datetime data Chart1.Axes.Bottom.DateTimeFormat := 'dd/mmm/yy hh:mm:ss';
Axis標簽可以顯示為多行文本而不是單行文本。使用TeeLineSeparator全局常量分隔行,該常量默認為回車符ascii字符(#13)。
//Add the Series labels in this way and apply 'Marks' as Axis labelling style Series1.Add( 1234, 'New'+TeeLineSeparator+'cars' , clRed ); Series1.Add( 2000, 'Old'+TeeLineSeparator+'bicycles' , clBlue );
DateTime標簽的示例:
以下將在兩行文本中顯示底軸標簽,一行顯示月份和日期,第二行顯示年份:Feb-28 Mar-1 .. 1998 1998 ..
Series1.AddXY( EncodeDate( 1998,2,28 ), 100 ); Series1.AddXY( EncodeDate( 1998,3,1 ), 200 ); Series1.AddXY( EncodeDate( 1998,3,2 ), 150 ); Series1.XValues.DateTime := True; Chart1.Axes.Bottom.DateTimeFormat := 'mm/dd hh:mm'; { <-- space }
如果將LabelsMultiLine屬性設置為True,則軸將自動將標簽拆分為找到空格的單獨行。
Chart1.Axes.Bottom.LabelsMultiLine:=True;
將標簽分為兩部分:
'mm / dd'代表第二行
'hh:mm'代表第二行
在運行時,您始終可以使用OnGetAxisLabel事件以編程方式將標簽拆分為行:
procedure TForm1.Chart1GetAxisLabel(Sender: TChartAxis; Series: TChartSeries; ValueIndex: Integer; var LabelText: String); var s:string; begin s:='abc'+TeeLineSeparator+'def'; LabelText:=ReplaceChar(s,' ',TeeLineSeparator); end;
軸LabelsAngle屬性(標度旋轉角度為0度,90度,180度或270度)也可用于多線軸標簽。
可以使用Axis事件獲得更多標簽控件。事件允許您激活/停用/更改任何單個Axis標簽。以下示例修改每個Label,將文本短語放在點索引值的前面。
//set LabelStyle to 'Mark' with the TChart editor or use:- Chart1.Axes.Bottom.LabelsStyle := talMark; //OnGetaxisLabel event procedure TForm1.Chart1GetAxisLabel(Sender: TChartAxis; Series: TChartSeries; ValueIndex: Integer; var LabelText: String); begin if Sender = Chart1.Axes.Bottom then LabelText := 'Period ' + IntToStr(ValueIndex); end;
有3種刻度類型。您可以更改每種刻度類型的長度,寬度和顏色。如果刻度線寬度設置為1(默認值),則可以將樣式更改為多種線型之一(點,短劃線等)。如果width大于1,則將忽略樣式。
With Chart1.Axes.Bottom do Begin TickLength := 7; Ticks.Color := clGreen; MinorTickCount := 10; //change number of minorticks between (major) Ticks end;
軸具有修改每個軸所在位置的屬性。在此示例中,軸移動到圖表總寬度的50%,因此它顯示在圖表中心:
Chart1.Axes.Left.PositionPercent := 50 ;
購買TeeChart Pro VCL/FMX正版授權,請點擊“”喲!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn