翻譯|使用教程|編輯:王香|2018-09-10 14:53:25.000|閱讀 440 次
概述:本文詳細介紹了在TeeChart for Java中使用系列中的系列類型。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
【下載TeeChart for Java最新版本】
TChartSeries組件是所有Seri??es類型的common ancestor。
作為TeeChart類型庫結構的一小部分背景,下面是對系列類和接口的解釋。下圖顯示了TeeChart系列類之間的關系。所有類都派生自通用的“Series”類,因此共享“Series”方法。幾個抽象類派生自Series(Custom3DSeries,CustomBarSeries和CircledSeries),這些類以灰色突出顯示,并且它們的接口不能直接用于編程,它們的特性由其后代Series類型繼承。所有派生系列(橙色)均可在TeeChart圖庫中訪問,以包含在您的圖表中。
TeeChart Pro的內部Series Class層次結構
您可以在設計時創建新的和不同的系列類型并將其添加到同一個圖表中。
//Add a series at runtime public void jButton2_actionPerformed(ActionEvent e) { Area area1 = new Area(tChart1.getChart()); area1.fillSampleValues(4); //Or //Area area1 = new Area(); //tChart1.getSeries().add(area1); //area1.fillSampleValues(4);//tChart1.Series.Add(tmpAreaSeries); }
在同一圖表中混合不同系列類的一個示例是在設計時將(Series(0)), Bar (Series(1))和Line (Series(2))系列添加到圖表中。所有訪問一個公共索引結構,圖表的系列列表,使用該系列可能如下所示:
//You could add the Series at runtime Area area1 = new Area(tChart1.getChart().chart); Bar bar1 = new Bar(tChart1.getChart().chart); Line line1 = new Line(tChart1.getChart().chart); //Use Series common properties tChart1.getSeries(0).fillSampleValues(10); tChart1.getSeries(1).fillSampleValues(10); tChart1.getSeries(2).fillSampleValues(10); tChart1.getSeries(1).getMarks().setVisible(false); tChart1.getSeries(2).getMarks().setVisible(false); //Modify Bar specific properties bar1.setBarStyle(BarStyles.PYRAMID); bar1.getPen().setColor(Color.Yellow); //Modify Line specific properties line1.setStairs(true); //Set line to Stairs line1.getLinePen().setColor(Color.Blue); //LineSeries bounding lines colour //Modify Area specific properties area1.getAreaBrush().setStyle(HatchStyle.CROSS); //Area fill pattern
為圖表選擇系列類型將在很大程度上取決于您自己對圖表的要求,但是,有時候Chart的選擇取決于哪種Series類型支持輸入變量的數量,因為要繪制的變量數量很多,下表顯示了Series類型示例允許的變量數。
系列類型 | 變量數量 | 數據源屬性 |
基本 | ||
Line | 2 | XValues,YValues,XLabel |
Fast Line | 2 | XValues,YValues,XLabel |
Bar | 2 | XValues,YValues(稱為Bar),XLabel |
HorizBar | 2 | XValues,YValues(稱為Bar),XLabel |
Area | 2 | XValues,YValues,XLabel |
Point | 2 | XValues,YValues,XLabel |
Pie | 1 | PieValues,XLabel |
Arrow | 4 | StartXValues,StartYValues,XLabel,EndXValues,EndYValues |
Bubble | 3 | Xvalues, YValues, XLabel, RadiusValues |
Gantt | 3 | StartValues,EndValues,AY(Y軸級別),AXLabel(標簽可選擇顯示在Y軸上或作為標記) |
Shape | 4 | X0 (Top), Y0 (Bottom), X1 (Left), Y1 (Right) |
Extended | ||
Bezier | 2 | XValues, YValues, XLabel |
Candle | 5 | OpenValues,CloseValues,HighValues,LowValues,DateValues |
Contour | 3 | XValues,YValues,XLabel,ZValues |
Error Bar | 3 | XValues, YValues, XLabel, ErrorValues |
Point3D | 3 | XValues, YValues, XLabel, ZValues |
Polar | 2 | XValues,YValues,Labels(Polar有角度和半徑) |
Radar | 2 | XValues,YValues,Labels(Radar有角度和半徑) |
3D Surface | 3 | XValues, YValues, ZValues |
Volume | 2 | XValues, YValues (VolumeValues), XLabel |
標簽可用于擴展2變量Series Type的值。請參閱下面的示例,該示例在同一圖表中使用3個Bar Series類型的實例。
例:使用Bar系列類型
產品代碼 | 月 | 產量 |
10 | Jan | 300 |
10 | Feb | 325 |
10 | Mar | 287 |
12 | Jan | 175 |
12 | Feb | 223 |
12 | Mar | 241 |
14 | Jan | 461 |
14 | Feb | 470 |
14 | Mar | 455 |
在最簡單的形式中,數據生成以下圖表,按月對信息進行分組:
或(按產品分組):
在上表(Stock)中添加了新值。
產品代碼 | 月 | 產量 | 庫存 |
10 | Jan | 300 | 600 |
10 | Feb | 325 | 715 |
10 | Mar | 287 | 676 |
12 | Jan | 175 | 245 |
12 | Feb | 223 | 270 |
12 | Mar | 241 | 315 |
14 | Jan | 461 | 800 |
14 | Feb | 470 | 755 |
14 | Mar | 455 | 835 |
庫存的價值通常高于月產量,因此顯示它們會給出下面的圖表(這次是2D)。圖表使用線系列來區分股票。
大多數系列類型,使用Add和ADDXY方法添加數據。有一些例外,請參見下表:
系列類型 | 添加系列點數 | 刪除系列點 |
標準系列類型 | ||
Line |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Horiz Line |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Fast Line |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Bar |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
HorizBar |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Area |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Point |
Series.Add Series.AddXY Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Pie |
Series.Add Series.AddNull |
Series.Delete Series.Clear |
Arrow |
Series.AddArrow Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Bubble |
BubbleSeries.AddBubble Series.AddNull Series.AddNullXY |
Series.Delete Series.Clear |
Gantt |
GanttSeries.AddGantt GanttSeries.AddGanttColor |
Series.Delete Series.Clear |
Shape |
ShapeSeries.X0, ShapeSeries.Y0, ShapeSeries.X1, ShapeSeries.Y1 |
TChart.RemoveSeries (Each Shape is a unique Series) |
添加點時,可以手動為點添加顏色,例:
tChart1.addSeries(new Bar()); tChart1.getSeries(0).add(50,"oranges", Color.Orange);
或者,您可以允許TeeChart分配顏色。如果ColorEach設置為true,TeeChart將為每個新系列選擇最多19種唯一且尚未使用的顏色之一,或者為每個新系列點選擇一種顏色,例:
Random rnd = new Random(); tChart1.getSeries(0).setColorEach(true); for(int i = 0; i < 19; ++i) { int higher = i + 65; tChart1.getSeries(0).add(rnd.nextInt(100)); } }
使用Series.Delete從Series中刪除一個點,例:
tChart1.getSeries(0).delete(7); //(8th point - Points index start at zero)
Series.Clear清除系列中的所有點。
有關支持AddNull方法的系列類型列表,顧名思義,AddNull將為系列添加一個Null點,允許您為該點定義一個標簽,但在該點處系列中斷。在Line Series的情況下,中斷前的最后一個點不會連接到中斷后的第一個點。見Series.AddNull,例:
Line line = new Line(); line.addNull();
購買Steema正版授權,請點擊“”喲!
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn