WPF优秀图表组件推荐之LiveCharts
概述
LiveCharts是一个比较漂亮的WPF图表控件,在数据变化时还会有动画切换的效果,并且样式也可以控制。
官方网站:Live Charts (lvcharts.net)
开源代码:GitHub - Live-Charts/Live-Charts: Simple, flexible, interactive & powerful charts, maps and gauges for .Net
本文代码基于Stylet开发,如果您还不了解Stylet,请参阅:
WPF优秀组件推荐之Stylet(一) - seabluescn - 博客园 (cnblogs.com)
WPF优秀组件推荐之Stylet(二) - seabluescn - 博客园 (cnblogs.com)
环境安装
通过Nuget引用下面两个组件;
基本使用
本文介绍一个常用的折线图的控件,其它控件请查看官方代码。
Xaml:
<lvc:CartesianChart > <lvc:CartesianChart.Series> <lvc:LineSeries Title="Voltage" Values="{Binding VoltageLineSeries}" /> <lvc:LineSeries Title="Current" Values="{Binding CurrentLineSeries}" /> </lvc:CartesianChart.Series> <!--定义Y轴--> <lvc:CartesianChart.AxisY> <lvc:Axis Title="Voltage/Current"></lvc:Axis> </lvc:CartesianChart.AxisY> <!--定义X轴--> <lvc:CartesianChart.AxisX> <lvc:Axis Title="Samples" Labels="{Binding XTimeLabels}"/> </lvc:CartesianChart.AxisX> </lvc:CartesianChart>
Code:
#region LiveCharts public string[] XTimeLabels { get; set; } = new string[] { "0" }; public ChartValues<double> VoltageLineSeries { get; set; } public ChartValues<double> CurrentLineSeries { get; set; } public void ReflashDatas() { Random random = new Random(); VoltageLineSeries = new ChartValues<double>(); CurrentLineSeries = new ChartValues<double>(); Task.Run(() => { while (true) { VoltageLineSeries.Add(random.Next(200, 300)); CurrentLineSeries.Add(random.Next(1, 20)); int Count = VoltageLineSeries.Count; if (Count > 0) { XTimeLabels = new string[Count]; for (int i = 0; i < Count; i++) { XTimeLabels[i] = (i + 1).ToString(); } } Thread.Sleep(2000); } }); } #endregion
以上代码下载地址:NiceComponents · Bruce/Learn WPF - 码云 - 开源中国 (gitee.com)
参考文档:
WPF绘制图表-LiveCharts - 橘子香气 - 博客园 (cnblogs.com)
WPF LiveChart 图表详解 - 痕迹g - 博客园 (cnblogs.com)
更多资源请参考官方源码。
出处:https://www.cnblogs.com/seabluescn/p/15980609.html
关注我】。(●'◡'●)
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【因为,我的写作热情也离不开您的肯定与支持,感谢您的阅读,我是【Jack_孟】!
本文来自博客园,作者:jack_Meng,转载请注明原文链接:https://www.cnblogs.com/mq0036/p/15983936.html
【免责声明】本文来自源于网络,如涉及版权或侵权问题,请及时联系我们,我们将第一时间删除或更改!
posted on 2022-03-09 10:35 jack_Meng 阅读(2146) 评论(0) 编辑 收藏 举报