WPF中使用amCharts繪製股票K線圖
本想自己用GDI繪圖, 通過資料直接繪製一張蠟柱圖, 但覺得這樣子的功能比較少, 所以到網上搜索一些能畫出K線圖的控制元件. 發現DynamicDataDisplay挺好的, 在它的開發截圖裡也發現可以繪製蠟柱圖, 但文件好像做的不是很好, 不知道怎麼用它來畫, 在尋找它比較好的例子的時候發現有人推薦用amCharts繪製, 所以便去看了一下, 發現挺好用的, 效果如下:
準備工作
先要去這裡下載amCharts Stock Chart for WPF並解壓, 新建一個WPF Project, 在Toolbox裡右擊, 選擇Choose Items, 然後點選Browse, 找到解壓後的資料夾裡有一個AmCharts.Windows.Stock.dll, 單擊Okay, 準備工作就做好了.
介面中amCharts控制元件的配置
<ams:StockChart></ams:StockChart>用於在視窗中新增這樣一個控制元件, 先看看這個控制元件是怎麼繫結資料的:
1 2 3 4 5 6 7 8 |
< ams:StockChart.DataSets >
< ams:DataSet Name="stockSet1"
Brush="#7f8da9"
ItemsSource="{Binding
Data}"
DateMemberPath="date" OpenMemberPath="open"
HighMemberPath="high"
LowMemberPath="low"
CloseMemberPath="close"
ValueMemberPath="close"
VolumeMemberPath="volume"
/>
</ ams:StockChart.DataSets >
|
其中ItemSource中的Data是在程式裡產生的, 它是一個StockInfo類的集合. DataMenberPath, HighMenberPath, LowMenberPath, CloseMenberPath, ValueMenberPath, VolumeMenberPath指定的元素都是Data集合中StockInfo的屬性. StockInfo類結構如下:
1 2 3 4 5 6 7 8 9 10 |
public class StockInfo
{
public DateTime
date { get ;
set ;
}
public double open
{ get ;
set ;
}
public double high
{ get ;
set ;
}
public double low
{ get ;
set ;
}
public double close
{ get ;
set ;
}
public double volume
{ get ;
set
|