0
点赞
收藏
分享

微信扫一扫

科研绘图系列:R语言圆形条形图(circular barplot)

時小白 2024-08-12 阅读 34

今日尝试写一款窗口上位机数据绘图助手Plotter的开发,实现接收解析数据包进行画图的功能:

文章提供完整代码解释、设计点解释、测试效果图、完整工程下载

 

控件摆放与使用控件大致介绍:

下载必要的Nuget程序包:

图表绘制相关代码逻辑:

 

 

 

将时间戳作为X轴输入:

 

时间戳绘制效果如下:

清空图表按钮实现:

        //清空图表
private void clear_button_Click(object sender, EventArgs e)
{
ClearChart(zedGraphControl1);
firstDataPoint_flag = false; //记录获取第一个数据 状态置零
}
// 清空图表中的所有曲线
private void ClearChart(ZedGraph.ZedGraphControl zgc)
{
GraphPane myPane = zgc.GraphPane;
// 遍历并删除所有曲线
while (myPane.CurveList.Count > 0)
{
myPane.CurveList.RemoveAt(0);
}
myPane.AxisChange();
// 刷新图表以显示更改
zgc.Refresh();
// 最后别忘记清理字典
ClearCurvesDictionary();
}

 

鼠标在数据点上获取精确值:

 

串口接收事件生成与衔接图表逻辑:

 

 单片机方面宏定义打印函数:

 

单片机串口发送示例:

 

接收数据字符串字段函数:

 

在串口接收事件中的调用解算:

 阶段性解算成果展示:

 

字典转换颜色字符串:

 

数据画图函数与非UI线程调用:

单条曲线绘图测试效果:

最终测试效果:

遇到的问题:

在非UI线程调用UI控件:

整体测试工程下载:

举报

相关推荐

0 条评论