关键词:ScottPlot、.NET、控件、免费、开源
导读
ScottPlot是一个免费和开源的.NET绘图库,可以轻松地交互显示大型数据集。
开源地址:https://github.com/ScottPlot/ScottPlot
使用手册:https://scottplot.net/cookbook/该组件主要有以下特点:
1. 适用于WinForms、WPF、Avalonia、Console,支持.NET Framework4.6.1及以上;
2. 上手简单:只需几行代码即可创建折线图、条形图、饼图、散点图等;
3. 性能强悍:千万级数据处理无压力;
4. 可交互:支持用户和图表数据进行交互;
5. 开源免费:基于MIT开源协议;
6. 组件丰富:图表组件非常全面,可满足各种场景下的展示需求。
安装流程
1. 创建工程后,选中解决方案名称,右键后点击“管理NuGet程序包”,如图1
图 1 点击“管理NuGet程序包”
2. 在搜索栏中输入“scottplot”,如图2中红框1;
点击ScottPlot.WinForms栏后的下载箭头,如图中2红框2
图 2 下载“ScottPlot.WinForms”
3. 安装ScottPlot.WinForms,点击“OK”,如图3
图 3 安装
接受许可证,点击“I Accept“,如图4
图 4 接受许可证
4. 安装完成,如图5
图 5 安装完成
5. 点击顶端“视图“,再选择“工具箱“,如图6
图 6 打开“工具箱”
完成FormsPlot控件的添加,如图7
图 7 FormsPlot控件
注意事项
1. 若正确安装ScottPlot.WinForms后,打开“工具箱”未找到FormsPlot控件,请点击首页顶端的“项目”,再选择“刷新项目工具箱项”,如图8
图 8 刷新工具箱
2. 需要保证自己的.NET环境符合图2-9中ScottPlot.WinForms依赖项要求,否则无法正常使用,如图9
图 9 ScottPlot.WinForms依赖项要求
演示
1. 选中“工具箱”中FormsPlot控件,将其拖入Form页面,如图10
图 10 添加FormsPlot控件
完成添加,如图11
图 11 完成添加
2. 在Form页面中添加一个button控件,点击button后生成一列正弦信号,同时在ScottPlot控件上显示,如图12
图 12 Demo
运行界面如图13
图 13 运行界面
参考代码如下
1. using System;
2. using System.Collections.Generic;
3. using System.ComponentModel;
4. using System.Data;
5. using System.Drawing;
6. using System.Linq;
7. using System.Text;
8. using System.Threading.Tasks;
9. using System.Windows.Forms;
10. using ScottPlot;//添加引用
11. using SeeSharpTools.JY.DSP.Fundamental;
12.
13. namespace Demo
14. {
15. public partial class Form1 : Form
16. {
17. public Form1()
18. {
19. InitializeComponent();
20. }
21.
22. private void button_Start_Click(object sender, EventArgs e)
23. {
24. //生成一个幅值为2,初始相位为0,频率为100Hz的正弦波
25. double[] sinewaveData = new double[1000];
26. Generation.SineWave(ref sinewaveData, 2,0,100,10000);
27.
28. //1.创建对象
29. var plt = formsPlot1.Plot;
30. //2.设置ScottPlot的X轴
31. double[] xs = DataGen.Consecutive(1000);
32. //3.将数据按X、Y轴显示为散点图
33. plt.AddScatter(xs, sinewaveData);
34. //4.修改ScottPlot的标题
35. plt.Title("JYTEK");
36. //5.刷新
37. formsPlot1.Refresh();
38. }
39. }
40. }
Copyright © 2016-2024 JYTEK All Rights Reserved.