




已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Delphi Tchart 控件使用!(轉帖) 收藏 這樣就會生成一個簡單的折線圖表,要生成其它類型的數(shù)據(jù)圖表,可以添加不同的數(shù)據(jù)序列(各種圖表的序列類型可以參考幫助文檔)。2.如何設置圖表的標題?TChart組件提供了Title屬性可以這是圖表的標題,包括標題的內容、字體、對齊方式等都可以通過Title屬性設置。最簡單的設置方式:Chart1.Title.Text.Text := '圖表的標題'3.如何修改圖表的背景顏色和整個圖表的顏色?TChart是一個窗體控件,可以通過修改Color屬性設置圖表顏色,這是一種最簡單的方式:Chart1.Color := clWhite;修改圖表部分的背景色可以通過BackColor屬性來實現(xiàn):Chart1.BackColor := clGreen;此外,TChart還提供了漸變的背景支持,通過Gradient控制:Chart1.Gradient.Visible := True;Chart1.Gradient.Direction := gdFromTopLeft;Chart1.Gradient.StartColor := clGreen;Chart1.Gradient.EndColor := clYellow;4.TChart的3D效果如何控制?TChart提供了View3D屬性,控制是否使用3D效果,View3dWalls屬性控制是否顯示左側的3D墻效果5.如何不顯示圖表控件生成圖表?很遺憾,TChart是一個Windows窗體控件,必須依附一個窗體或Windows控件才能使用。如果要不顯示TChart的話,可以將TChart的Visible屬性設為False來使用。下面的例子創(chuàng)建了一個隱藏的TChart來生成圖表:varChart: TChart;S: TChartSeries;TmpFile: string;beginChart := TChart.Create(nil);try Chart.Parent := Application.MainForm; Chart.Visible := False; Chart.Title.Text.Text := '測試圖表' S := TBarSeries.Create(Chart); Chart.AddSeries(S); S.Title := '嘿嘿' S.AddXY(1, 56, '一月', clGreen); S.AddXY(2, 67, '二月', clYellow); S.AddXY(3, 34, '三月', clBlue); S.AddXY(4, 78, '四月', clRed); Chart.View3D := False; Chart.BackColor := clWhite; Chart.Gradient.StartColor := clWhite; Chart.Gradient.EndColor := clWhite; Chart.Gradient.Visible := True; TmpFile := Application.ExeName + '.bmp' Chart.SaveToBitmapFile(TmpFile); Image1.Picture.LoadFromFile(TmpFile);finally Chart.Free;end;end; 分析報告1.1 概述 TChart是delphi里面一個標準的圖形顯示控件。它可以靜態(tài)設計(at design time)也可以動態(tài)生成。1.2 繼承關系 Tobject TPersistent TComponent TControl TCustomControl TWedgetControl TChart TCustomPanel 1.3 tips1.3.1 Pro Version支持Bezier , Contour , Radar 和 point3D 曲線1.3.2 支持jpeg文件的導出1.3.3 Chart中的Series 可以連接到Table , Query , RemoteDataset(其他數(shù)據(jù)集)1.3.4 TChart里的series的active屬性可以實現(xiàn)對已繪制圖形的顯示或者隱藏1.3.5 在TChart中, tchartSeries是所有具體series的父類,沒有畫出什么來的,用一個具體的series類來創(chuàng)建就可以了,比如用TLineSeries、 TPieSeries、 TPointSeries、 TPointSeries等等都行1.3.6 TTeeFunction Component可以實現(xiàn)在同一個TChart里面,一個Serries對另一個Serries的統(tǒng)計1.4 問題極其使用技巧1.4.1 TChart中如何實現(xiàn)只有Y軸的放大與縮小功能?設置BottomAxis或者LeftAxis的Automatic:=false并同時設置Minimum,Maximum屬性1.4.2 如何固定TChart中的坐標,不使TChart中的坐標跟隨Series的變化而變化?/設置底座標 with myChart.BottomAxis do begin Automatic:=false; Minimum:=0; LabelStyle := talText; end; /設置左坐標 with myChart.LeftAxis do begin Automatic:=false; Minimum:=0; Title.Angle:=270; Title.Font:=Self.Font; Title.Font.Charset:=ANSI_CHARSET; Title.Font.Name:='宋體' Grid.Visible := False; end; /設置右坐標 with myChart.RightAxis do begin Automatic:=false; Title.Font:=Self.Font; Title.Font.Charset:=ANSI_CHARSET; Title.Font.Name:='宋體' Title.Caption:='累計百分比(%)' Maximum:=100; Minimum:=0; end;1.4.3 如何刪除一個圖形中的一個點?使用Series的delete 方法1.4.4 如何修改一個點的X或者Y 值?LineSeries1.YValue3 := 27.1 ; In Bubble SeriesBubbleSeries1.RadiusValues.Value 8 := 8.1 ;In Pie SeriesPieSeries1.PieValues.Value 3 := 111 ;1.4.5 如果橫坐標是時間(日期),如何進行設置?First, you need to set the DateTime property to True in the desired X and/or Y values list.LineSeries1.XValues.DateTime := True ;Second, use the same above described methods, but give the values as Date, Time or DateTime valuesLineSeries1.AddXY( EncodeDate( 1996 , 1 , 23 ) , 25.4 , 'Barcelona' , clGreen );1.4.6 如何在chart中畫出的曲線某個點上標記出該點的值?Series.Marks.Visible:=true;Series.Marks.Style:=smsValue;1.4.7 如何設置橫軸或者縱軸的增長率?Chart.BottomAxis.Increment := DataTimeStep dtOneHour ;Chart.RightAxis.Increment := 1000;1.4.8 如何對圖象進行縮放?TChart的ZoomRect或者ZoomPercent方法 (Pie圖可能不支持縮放) 1.5 TChart可以繪制的圖形1.5.1 Line ( TLineSeries)1.5.2 FastLine (TFastLineSeries) 相對Line來說,它損耗了某些屬性從而來實現(xiàn)快速繪制1.5.3 Bar (TBarSeries) 1.5.4 Horizontal bar (THorizBarSeries)1.5.5 Area (TAreaSeries)1.5.6 Point (TPointSeries)1.5.7 Pie (TPieSeries)1.5.8 Arrow (TArrowSeries)1.5.9 Bubble (TBubbleSeries)1.5.10 Gantt (TGanttSeries)1.5.11 Sharp (TChartShape)1.6 TChart的實時繪制 實時繪制對機器性能要求比較高,因此我們在編程的時候要注意下面幾個方面: 使用2D圖形 是Chart盡可能包含少的點 如果需要,可以移除(remove)chart的legend(?)和Title 使用默認的字體和字體大小 使用FastLineSeries 使用實體(solid)畫筆和畫刷格式 盡量避免使用圓形和環(huán)行bar樣式 不要使用背景圖片和漸變效果樣式 把Chart的BevelInner和BevelOUter屬性設置為bcNone 如果需要,把TChart的AxisVisible屬性設置為False 把BufferedDisplay設置為false可以加速chart的重繪1.7 Scrolling TChart有4中scroll選擇(AllowPanning屬性),分別是不允許Scroll ( pmNone) ; 水平Scroll (pmHorizontal) ; 垂直Scroll (pmVertical) ; 水平和垂直Scroll (pmBoth)Procedure Scroll(Const Offset:Double; CheckLimits:Boolean);例子如下: Chart1.BottomAxis.Scroll( 1000, True );這段代碼也等同于With Chart1.BottomAxis doBegin Automatic:=false; SetMinMax( Minimum+1000, Maximum+1000 ); End;1.8 TChart中的全局變量 TeeScrollMouseButton := mbRight;設置鼠標右鍵為TChart滾動鍵(默認) TeeScrollKeyShift := ssCtrl ; 要按住Control鍵才可以使Scroll滾動1.9 TChartSerries使用技巧1.9.1 運行時候創(chuàng)建一個Serries, 三種方法:1Var MySeries : TBarSeries ;MySeries := TBarSeries.Create( Self );MySeries.ParentChart := Chart1 ;2Chart1.AddSeries( TBarSeries.Create( Self ) );3Var MyClass : TChartSeriesClass;MyClass := TBarSeries ;Chart1.AddSeries( MyClass.Create( Self ) );1.9.2 獲得TChart中的Serries數(shù)組,也有三種方法1MySeries := Chart1.SeriesList 0 2MySeries := Chart1.Series 0 3MySeries := Chart1 0 1.9.3 SerriesCount屬性獲得SeriesList中Series的個數(shù)1.9.4 隱藏TChart中的Series有三種方法,但是效果不等價1 Series1.Active:=False; 僅僅隱藏,當設置為true的時候還可以顯示出來2 Series1.ParentChart:=nil ; 隱藏,重新設置ParentChart為TChart時候可以顯示3 Series1.Free; 刪除了Series. 不可以恢復1.9.5 TChart中的數(shù)據(jù)排序 With Series1 dobegin YValues.Order:=loAscending; YValues.Sort; Repaint;e
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沙漠游記題目及答案解析
- 2023-2024學年山東省部分學校高二下學期期末聯(lián)合教學質量檢測數(shù)學試卷(解析版)
- 2023-2024學年湖北省十堰市高二下學期6月期末調研考試數(shù)學試卷(解析版)
- 2024-2025學年浙江省嘉興市高二上學期期末考試語文試題(解析版)
- 店面房屋租賃協(xié)議-房屋店面租賃合同模板-店面房屋租賃協(xié)議
- 高層建筑結構試題庫
- 高中語文選擇性必修下冊8《茶館》課件(32張課件)
- 飲酒檢討書范文
- 口服保肝藥講課件
- 佛山校園封閉管理制度
- 《報檢與報關實務(李賀)-上海財經大學出版社》課后答案
- 《建材產品追溯中國ISO標準砂》
- 2015年江蘇省南通市中考真題語文試題(解析版)
- 大學物業(yè)服務月考核評價評分表
- 2023-2024學年廣東省佛山市高二下學期7月期末考試物理試題(解析版)
- 超聲波醫(yī)學技術中級《專業(yè)實踐能力》(題庫)模擬試卷二
- 成人失禁相關性皮炎的預防與護理
- 泉州律師見證委托合同范本
- 車位轉讓協(xié)議書范文原
- 畢業(yè)研究生登記表(適用于江蘇省)
- 儀器分析智慧樹知到答案2024年臨沂大學
評論
0/150
提交評論