1. 程式人生 > 程式設計 >WPF圖表LiveChart使用詳解

WPF圖表LiveChart使用詳解

本文主要介紹LiveChart.WPF 中的圖表的使用方法 類: 資料繫結,資料顯示樣式等。

匯入LiveChart.Wpf

NuGet搜尋LiveChart包,安裝LiveChart.Wpf即可。

WPF圖表LiveChart使用詳解

引用LiveChart.Wpf

在使用的介面當中引用LiveChart.Wpf的類庫

xmlns:lvc="clr-namespace:LiveCharts.Wpf;assembly=LiveCharts.Wpf"

以直方圖、折線圖為例,都屬於 CartesianChart 下的一種 Series 型別,例如折線圖,如下:

            <lvc:CartesianChart>
            <lvc:CartesianChart.Series>
                  <!--設定Series的型別為 Line 型別,該型別提供了一些折線圖的實現-->
      
<lvc:LineSeries/> </lvc:CartesianChart.Series> </lvc:CartesianChart>

LinSeries 繫結資料設定Values即可,可以看到帶s,則代表這是一種複數集合型別,繼承於 IChartValues,所以最終繫結的資料符合 ChartValues 即可,下圖綁定了為數字型別的集合:

           <lvc:CartesianChart>
            <lvc:CartesianChart.Series>
    NOOKYAl
<!--設定Series的型別為 Line 型別,該型別提供了一些折線圖的實現--> <lvc:LineSeries Values="1,2,3,4,5,6"/> <lvc:LineSeries Values="2,6,8,10,12"/> http://www.cppcns.com </lvc:CartesianChart.Series> </lvc:CartesianChart>

介面呈現如下所示:

WPF圖表LiveChart使用詳解

接下來,以LineSeries為例子,來進行擴充套件,新增 X 、Y座標的定義顯示。

WPF圖表LiveChart使用詳解

為LiveChart的 X、Y軸新增標題

            <!--定義Y軸-->
            <lvc:CartesianChart.AxisY>
                <!-- 定義Y軸名稱 -->www.cppcns.com;
                <lvc:Axis Title="Value"></lvc:Axis>
            </lvc:CartesianChart.AxisY>
            
            <!--定義X軸-->
            <lvc:CartesianChart.AxisX>
                 <!-- 定義X軸名稱 -->
                <lvc:Axis Title="Type"></lvc:Axis>
            </lvc:CartesianChart.AxisX>

效果如下:

WPF圖表LiveChart使用詳解

圖表顯示設定

1.圖例的顯示位置: LegendLocation="Top" //顯示在上方
2.圖表的背景顏色: Background="#FFEFD5"

如下所示:

WPF圖表LiveChart使用詳解

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>

顯示效果:

WPF圖表LiveChart使用詳解

LineSeries 樣式設定

1.線條顯示數值: DataLabels="True"
2.線條是否彎曲: LineSmoothness="0" 或 "1"
3.線條的顏色: Stroke="Red" //設定線條的顏色為紅色
4.線條下方顏色: Fill="Pink" //線條的下方顏色
5.線條的每個點: PointGeometrySize="20" //設定資料點大小
6.顯示資料字型顏色: Foreground="Red"
7.資料點的顏色: PointForeground="#FF6347"
8.線條虛線: StrokeDashArray="5" //數值愈大間隔愈大,如下綠色虛線

WPF圖表LiveChart使用詳解

9.線條點的形狀: PointGeometry //如下所示,為資料點設定為一個矩形

        <lvc:LineSeries DataLabels="False" Stroke="#32CD32" StrokeThickness="1"   StrokeDashArray="5"
                                LineSmoothness="1" Foreground="Red"
                                Fill="#FFA07A" PointGeometrySize="10"   
                                Values="1,1,4">
                    <lvc:LineSeries.PointGeometry>
                        <GeometryGroup>
                            <RectangleGeometry Rect="50,50,25,25" />
                        </GeometryGroup>
                    </lvc:LineSeries.PointGeometry>
                </lvc:LineSeries>

效果如下所示:

WPF圖表LiveChart使用詳解

X、Y座標 樣式設定

1.是否顯示座標點: ShowLabels="False"
2.座標點的旋轉角度: LabelsRotation="45"
3.座標軸標籤: Labels="A,B,C,D,E,F" //示例
4.自定義顯示格式: LabelFormatter

圖表是否顯示背景X、Y線:

以下程式碼設定,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,F" ShowLabels="True" >
                    <lvc:Axis.Separator>
                        <lvc:Separator StrokeThickness="1" Stroke="Red"  />
                    </lvc:Axis.Separator>
                </lvc:Axis>
            </lvc:CartesianChart.AxisX>

效果如下所示:

WPF圖表LiveChart使用詳解

定義餅狀圖

由於餅狀圖並沒有X、Y軸的概念,所以需要使用餅狀圖,則使用 PieChart。

1.設定顯示資料的格式: LabelPoint //該繫結的是一個Func的委託

Xaml繫結:

WPF圖表LiveChart使用詳解

後臺程式碼及顯示效果:

WPF圖表LiveChart使用詳解

到此這篇關於WPF圖表LiveChart使用的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支援我們。