wpf利用Visifire.Chart实现实时曲线绘制
1.添加引用库WPFVisifire.Charts.dll至工程;
2.using Visifire.Charts
3.xmal中新建一个Grid 命名为 Simon
<Grid Name="Simon"Grid.Column="5" Grid.ColumnSpan="1" Grid.Row="11" Grid.RowSpan="2" Background="WhiteSmoke" />
4.建立两个list数组作为数据传入接口
private Chart chart;private List<string> strListx = new List<string>() { "1次", "3次", "5次", "7次", "9次" };private List<string> strListy = new List<string>() { "100","80","40","70","6" };
5。建立一个创建波形函数,并将其放在初始化函数里面
public void CreateChartColumn(string name, List<string> valuex, List<string> valuey){//创建一个图标chart = new Chart();//设置图标的宽度和高度chart.Width = 480;chart.Height = 280;chart.Margin = new Thickness(50, 5, 50, 5);//是否启用打印和保持图片chart.ToolBarEnabled = false;//设置图标的属性chart.ScrollingEnabled = false;//是否启用或禁用滚动chart.View3D = false;//3D效果显示//创建一个标题的对象Title title = new Title();//设置标题的名称title.Text = name;title.Padding = new Thickness(0, 10, 5, 0);//向图标添加标题chart.Titles.Add(title);Axis yAxis = new Axis();//设置图标中Y轴的最小值永远为0 yAxis.AxisMinimum = 0;//设置图表中Y轴的后缀 yAxis.Suffix = "A";chart.AxesY.Add(yAxis);// 创建一个新的数据线。 DataSeries dataSeries = new DataSeries();// 设置数据线的格式dataSeries.RenderAs = RenderAs.StackedColumn;//柱状Stacked// 设置数据点 DataPoint dataPoint;for (int i = 0; i < valuex.Count; i++){// 创建一个数据点的实例。 dataPoint = new DataPoint();// 设置X轴点 dataPoint.AxisXLabel = valuex[i];//设置Y轴点 dataPoint.YValue = double.Parse(valuey[i]);//添加一个点击事件 //dataPoint.MouseLeftButtonDown += new MouseButtonEventHandler(dataPoint_MouseLeftButtonDown);//添加数据点 dataSeries.DataPoints.Add(dataPoint);}// 添加数据线到数据序列。 chart.Series.Add(dataSeries);//将生产的图表增加到Grid,然后通过Grid添加到上层Grid. Grid gr = new Grid();gr.Children.Add(chart);this.Simon.Children.Add(gr);}
6.调用接口如下:
CreateChartColumn("电流奇次谐波表", strListx, strListy);
7.新建一个定时器更新柱状图数据
private DispatcherTimer upcharttimer = new DispatcherTimer();
//定时器初始化放入界面初始化中upcharttimer.Tick += new EventHandler(_timer_Tick);upcharttimer.Interval = TimeSpan.FromSeconds(1);//函数放入类中void _timer_Tick(object sender, EventArgs e){float[] disdata = new float[5];for(int i=0;i<5;i++){disdata[i] = (float)Math.Sqrt(featvec[i * 2] * featvec[i * 2] + featvec[i * 2 + 1] * featvec[i * 2 + 1]);chart.Series[0].DataPoints[i].YValue = disdata[i];}}//利用按键进行定时器开始和停止upcharttimer.Stop();upcharttimer.Start();
wpf利用Visifire.Chart实现实时曲线绘制相关推荐
- STM32连续采样_STM32 - 利用双缓冲实现实时曲线显示(续)
前言 大概半个月之前捣鼓了下利用STM32实现实时曲线显示,中间又做了一点小改进和扩充,在这里更新一下: 利用DMA进行缓冲区到LCD GRAM的像素数据搬运 效果更好的曲线绘制策略 代码可以在这里找 ...
- vb实时曲线的绘制和保存
在VB中绘制实时曲线是比较难的,一般要应用第三方控件或是Windows API函数来完成,但是如果你对实时曲线的要求不是很高,只要能表示出当前的一般情况的话,我们可以直接应用VB提供给我们的空间来完成 ...
- Qt串口通信实时曲线上位机源代码
Qt串口通信实时曲线上位机源代码 带用户配置保存 数据保存带有坐标轴缩放 拖动平移放大等功能,提供,提供源代码,注释,软件文档使用说明,可进行二次开发 通过定时发送获取数据,并将接收的数据采用Qt自带 ...
- 振弦采集模块配置工具VMTool 扩展功能指令生成器与实时曲线
振弦采集模块配置工具VMTool 扩展功能指令生成器与实时曲线 指令生成器 ( 1) 指令生成 指令生成器可根据需要生成符合 MODBUS 和 AABB 通讯协议的读取和控制指令. 通过点击串口调试工 ...
- android运动轨迹怎么画,Android 利用三阶贝塞尔曲线绘制运动轨迹的示例
本篇文章主要介绍了Android 利用三阶贝塞尔曲线绘制运动轨迹的示例,分享给大家,具体如下: 实现点赞效果,自定义起始点以及运动轨迹 效果图: xml布局: xmlns:tools="ht ...
- chart控件做实时曲线显示_组态王实时趋势曲线控件介绍,让你对此不再陌生
一.组态王实时趋势控件的特点 1. 通过TCPIP获得实时数据,数据服务器可以是任何一台运行组态王的机器,而不需进行组态王网络配置. 2. 最多可以显示20条曲线. 3. 可以设置每条曲线的绘制方式, ...
- java曲线平滑算法_JFreeChart简单实现光滑曲线绘制
用JFreeChart绘制光滑曲线,利用最小二乘法数学原理计算,供大家参考,具体内容如下 绘制图形: 代码: FittingCurve.java package org.jevy; import ja ...
- 模拟仪器仪表ActiveX(OCX)控件 - 实时曲线(RTChart)介绍及下载地址
SIARTChart Control(Simulated Instrument ActiveX RealTime Chart)即实时曲线控件,用于工控领域绘制实时曲线,它提供了很多属性和方法来操纵它, ...
- python画曲线-利用python画出AUC曲线的实例
以load_breast_cancer数据集为例,模型细节不重要,重点是画AUC的代码. 直接上代码: from sklearn.datasets import load_breast_cancer ...
最新文章
- COMET | 概念学习使机器具有人的思维方式
- Spark rdd 介绍,和案例介绍
- MVPArms官方快速组件化方案开源,来自5K star的信赖
- 入侵检测——WebCrack
- VS自带数据库SqlExpress
- 电阻参数_电阻/电阻器的主要参数
- 关于商城商品表设计(一)
- 怎样把HTC G7的内存扩展到2GB
- 【Godot】一个节点发射器(泼水机)
- 【Python】​​​​​​​turtle八边形绘制
- 从此告别PPT制作的烦恼:ChatGPT和MindShow帮你快速完成
- linux宿主机ssh访问windows10虚拟机
- 受限玻尔兹曼机定型实用指南-大桥之墩译
- 【数据分析】黑色星期五(代码2)销售额分析1、2
- 树的直径/重心 学习笔记
- matlab 隐写分析,RS隐写分析.ppt
- 母亲节不能陪在妈妈身边,我用css和js给妈妈做了一个爱心飘落
- Arduino 制作PPT红外控制器
- 假如有三百多万存款,做什么稳健实体生意好?
- pc端ui图片尺寸_PC端UI界面设计规范分享 共同来学习_ui设计