WPF圖表LiveChart使用詳解
本文主要介紹LiveChart.WPF 中的圖表的使用方法 類: 數(shù)據(jù)綁定, 數(shù)據(jù)顯示樣式等。
導(dǎo)入LiveChart.Wpf
NuGet搜索LiveChart包, 安裝LiveChart.Wpf即可。
引用LiveChart.Wpf
在使用的界面當中引用LiveChart.Wpf的類庫
xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"
以直方圖、折線圖為例, 都屬于 CartesianChart 下的一種 Series 類型, 例如折線圖,如下:
<lvc:CartesianChart> <lvc:CartesianChart.Series> <!--設(shè)置Series的類型為 Line 類型, 該類型提供了一些折線圖的實現(xiàn)--> <lvc:LineSeries/> </lvc:CartesianChart.Series> </lvc:CartesianChart>
LinSeries 綁定數(shù)據(jù)設(shè)定Values即可, 可以看到帶s, 則代表這是一種復(fù)數(shù)集合類型,繼承于 IChartValues, 所以最終綁定的數(shù)據(jù)符合 ChartValues 即可, 下圖綁定了為數(shù)字類型的集合:
<lvc:CartesianChart> <lvc:CartesianChart.Series> <!--設(shè)置Series的類型為 Line 類型, 該類型提供了一些折線圖的實現(xiàn)--> <lvc:LineSeries Values="1,2,3,4,5,6"/> <lvc:LineSeries Values="2,4,6,8,10,12"/> </lvc:CartesianChart.Series> </lvc:CartesianChart>
界面呈現(xiàn)如下所示:
接下來, 以LineSeries為例子, 來進行擴展, 添加 X 、Y坐標的定義顯示。
為LiveChart的 X、Y軸添加標題
<!--定義Y軸--> <lvc:CartesianChart.AxisY> <!-- 定義Y軸名稱 --> <lvc:Axis Title="Value"></lvc:Axis> </lvc:CartesianChart.AxisY> <!--定義X軸--> <lvc:CartesianChart.AxisX> <!-- 定義X軸名稱 --> <lvc:Axis Title="Type"></lvc:Axis> </lvc:CartesianChart.AxisX>
效果如下:
圖表顯示設(shè)置
1.圖例的顯示位置: LegendLocation="Top" //顯示在上方
2.圖表的背景顏色: Background="#FFEFD5"
如下所示:
3.添加視覺元素: VisualElements
如下所示添加一個文本在圖表當中:
<lvc:CartesianChart.VisualElements> <lvc:VisualElement X="0.5" Y="8"> <lvc:VisualElement.UIElement> <TextBlock Foreground="Green"> Hello!, this is a note merged in the chart. </TextBlock> </lvc:VisualElement.UIElement> </lvc:VisualElement> </lvc:CartesianChart.VisualElements>
顯示效果:
LineSeries 樣式設(shè)置
1.線條顯示數(shù)值: DataLabels="True"
2.線條是否彎曲: LineSmoothness="0" 或 "1"
3.線條的顏色: Stroke="Red" //設(shè)置線條的顏色為紅色
4.線條下方顏色: Fill="Pink" //線條的下方顏色
5.線條的每個點: PointGeometrySize="20" //設(shè)置數(shù)據(jù)點大小
6.顯示數(shù)據(jù)字體顏色: Foreground="Red"
7.數(shù)據(jù)點的顏色: PointForeground="#FF6347"
8.線條虛線: StrokeDashArray="5" //數(shù)值愈大間隔愈大, 如下綠色虛線
9.線條點的形狀: PointGeometry //如下所示, 為數(shù)據(jù)點設(shè)置為一個矩形
<lvc:LineSeries DataLabels="False" Stroke="#32CD32" StrokeThickness="1" StrokeDashArray="5" LineSmoothness="1" Foreground="Red" Fill="#FFA07A" PointGeometrySize="10" Values="1,2,5,1,5,4"> <lvc:LineSeries.PointGeometry> <GeometryGroup> <RectangleGeometry Rect="50,50,25,25" /> </GeometryGroup> </lvc:LineSeries.PointGeometry> </lvc:LineSeries>
效果如下所示:
X、Y坐標 樣式設(shè)置
1.是否顯示坐標點: ShowLabels="False"
2.坐標點的旋轉(zhuǎn)角度: LabelsRotation="45"
3.坐標軸標簽: Labels="A,B,C,D,E,F" //示例
4.自定義顯示格式: LabelFormatter
圖表是否顯示背景X、Y線:
以下代碼設(shè)置,X、Y軸的寬度為1的顏色紅色的實線:
<!--定義Y軸--> <lvc:CartesianChart.AxisY> <lvc:Axis Title="Value" ShowLabels="True"> <lvc:Axis.Separator> <lvc:Separator StrokeThickness="1" Stroke="Red" /> </lvc:Axis.Separator> </lvc:Axis> </lvc:CartesianChart.AxisY> <!--定義X軸--> <lvc:CartesianChart.AxisX> <lvc:Axis Title="Type" LabelsRotation="45" Labels="A,B,C,D,E,F" ShowLabels="True" > <lvc:Axis.Separator> <lvc:Separator StrokeThickness="1" Stroke="Red" /> </lvc:Axis.Separator> </lvc:Axis> </lvc:CartesianChart.AxisX>
效果如下所示:
定義餅狀圖
由于餅狀圖并沒有X、Y軸的概念, 所以需要使用餅狀圖, 則使用 PieChart。
1.設(shè)定顯示數(shù)據(jù)的格式: LabelPoint //該綁定的是一個Func的委托
Xaml綁定:
后臺代碼及顯示效果:
到此這篇關(guān)于WPF圖表LiveChart使用的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
微軟 Visual Studio 2010官方下載地址給大家
昨天VS2010在網(wǎng)上報道都已經(jīng)發(fā)布了,現(xiàn)在今天在網(wǎng)上找到Visual Studio 2010官方下載地址,提供給大家下載。2010-04-04詳解.net循環(huán)、邏輯語句塊(基礎(chǔ)知識)
本篇是介紹.NET 基礎(chǔ)部分,主要簡述循環(huán),判斷,對初學(xué)者具有很好的參考借鑒價值,下面就跟小編一起來看下吧2016-12-12.Net?Core中使用MongoDB搭建集群與項目實戰(zhàn)
本文詳細講解了.Net?Core中使用MongoDB搭建集群與項目實戰(zhàn),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02一步步打造漂亮的新聞列表(無刷新分頁、內(nèi)容預(yù)覽)第三章
前面兩個章節(jié)我們將需求分析和概要設(shè)計簡單介紹了,接下來是重點的編代碼的階段了(實現(xiàn)無刷新分頁)。在編寫代碼之前,一定要有計劃的去編寫代碼,不能一開始啥也不管就開始編代碼,除非你特牛。2010-07-07