ComponentOne For WPF学习心得-实时数据
ComponentOne For WPF学习心得-实时数据
- 写在前面
- 不断更新的数据
- 数据源绑定
写在前面
这是ComponentOne For WPF学习的第三篇文章,我对比着读了前两篇文章,感觉还是后者读起来比较舒服和顺畅,所以以后的文章可能都会用这种写法,给他起个名字吧,就叫同步学习法。。。。。
这篇文章我们来学习怎么用C1Chart来显示实时数据。看起来好像很难哇,所以在动手前要先分析一下实时数据实现步骤,主要有一个不断更新的数据,然后不断的更新到图表里面,那么我们首先就要解决这个不断更新的数据,这里我是用定时器来解决这个问题
不断更新的数据
废话不多说,上代码
void Update()
{chart.BeginUpdate();int cnt = nAddPoints;//每次增加的点数for(int i=0;i<cnt;i++){double r = random.NextDouble();//创建随机数double y = (10*r*Math.Sin(0.1*counter)*Math.Sin(0.6*random.NextDouble()*counter));//经过一点的数据加工_pts.Add(new Point(counter++,y*100));}int ndel = _pts.Count - nMaxPoints;//nMaxPoints,图表中最多呈现的点数if(ndel>0){for(int i=0;i<ndel;i++){_pts.RemoveAt(0);//新的进来,旧的出去}chart.EndUpdate();}
}
这就一个简单的产生随机点的代码,将他放在定时器中循环运行,就形成了一个不断生成随机数的模块,上代码
DispatcherTimer dt = new DispacherTimer()
{ Interval = TimeSpan.FormSeconds(0.2) };//创建一个定时器
dt.Tick += (s,e) => Update(); //添加事件
dt.Start(); //定时器开始工作
这样我们就完成了,随机数的连续生成,那么下面就是创建一个简单的图标,这里就不再复述了,参考前一篇文章里的内容,那么就剩下数据绑定了
数据源绑定
这里的代码其实我也不太懂,不管如何,先上代码,写完在分析
//创建一个数据源对象,并设置相关属性
XYDataSeries ds = new XYDataSeries()
{XValueBinding = new Binding("X"),ValueBinding = new Binding("Y"),CounectionStrokeThickness = 2,
}chart.Data.Children.Add(ds);//将这个数据源对象及其配置导入
chart.Data.ItemSource = _pts;//数据绑定
chart.ChartType = ChartType.Line;//制定图表的类型
这样我们就完成了一个实时数据的动态C1图表
tips对比这里的数据源绑定和前两篇文章有什么不同,就能理解这的数据源对象用法了
!!
ComponentOne For WPF学习心得-实时数据相关推荐
- ZipKin原理学习(分布式实时数据追踪系统)+window部署zipkin+k8s部署zipkin
全栈工程师开发手册 (作者:栾鹏) 架构系列文章 ZipKin入门介绍 Zipkin是一款开源的分布式实时数据追踪系统(Distributed Tracking System),基于 Google D ...
- 邓俊辉数据结构学习心得系列——数据结构中所研究的算法
写在前面的话: 本文只是个人学习邓俊辉老师C++数据结构的整理,包含了很多个人的见解(从内容到材料的组织形式).所整理的内容不保证逻辑性和完整性,仅供参考. 算法的基本性质: 有正确的输入 有正确的输 ...
- STM32学习心得二十一:实时时钟RTC和备份寄存器BKP特征、原理及相关实验代码解读
记录一下,方便以后翻阅~ 主要内容 1) RTC特征与原理: 2) BKP备份寄存器特征与原理: 3) RTC常用寄存器+库函数介绍: 4) 相关实验代码解读. 实验内容: 因为没有买LCD屏,所以计 ...
- c语言节点有指针域数据域,学习心得:链表的操作(C语言实现)
今天将给大家讲述链表的学习心得.学习数据结构,毋庸置疑链表必须学好,后面的栈.队列.树.图都是以链表为基础的:链表的种类很多,有单链表.双链表.循环链表.非循环链表:在此,我们以非循环单链表为例,来讲 ...
- 数据科学学习心得_学习数据科学
数据科学学习心得 苹果 | GOOGLE | 现货 | 其他 (APPLE | GOOGLE | SPOTIFY | OTHERS) Editor's note: The Towards Data S ...
- 数据科学学习心得_学习数据科学时如何保持动力
数据科学学习心得 When trying to learn anything all by yourself, it is easy to lose motivation and get thrown ...
- C# ASP.NET MVC 之 SignalR 学习 实时数据推送显示 配合 Echarts 推送实时图表
本文主要是我在刚开始学习 SignalR 的技术总结,网上找的学习方法和例子大多只是翻译了官方给的一个例子,并没有给出其他一些经典情况的示例,所以才有了本文总结,我在实现推送简单的数据后,就想到了如何 ...
- Hibernate 学习心得1: 多对多关系中,中间表无法插入数据。
Hibernate 学习心得之一 多对多关系中,中间表无法插入数据. 最近学习 spring4+hibernate4,学习中遇到了很多坑. 在这里我来说说我遇到的坑,这里就不介绍如何spring如何集 ...
- 《Python网络爬虫——从入门到实践》第六章将数据存储至MySQL数据库的学习心得与总结(出错与纠正方法)
<Python网络爬虫--从入门到实践>第六章将数据存储至MySQL数据库的学习心得与总结(出错与纠正方法) 作为刚开始入门python的小白,对大数据,网络爬虫比较感兴趣.完全是自我修炼 ...
最新文章
- C# 加密解密(DES,3DES,MD5,Base64) 类
- 【干货】专注用户体验,用最小代价验证你想法的可执行性
- sqlserver安装显示句柄无效_Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法...
- gl3520 gl3510_带有gl gl本机的跨平台地理空间可视化
- java集合AbstractMap_Java 集合中的 AbstractMap 抽象类
- linux发包密码,linux下网络发包工具(cp过来的)
- java里面的三角函数
- 云WAF之语义分析引擎
- CF卡技术详解——笔记
- 两个自然数互素(relatively prime)
- 只有10分,5分,2分,1分的硬币;顾客付款x分,商品价格y分。如何找零所使用的硬币最少(递归实现)
- ThreadPoolExecutor(三)——Worker
- Docker之工作中常用的命令(二)
- php内外边距,CSS 内边距
- Thread yield
- 从反反鸡汤谈过犹不及
- SourceMap 浏览器控制台报错:DevTools failed to load SourceMap:Could not load content for ...
- emacs 使用汇总
- 重学计算机网络(一)计算机网络基础
- html如何添加音乐火狐,电脑如何将HTML书签导入进火狐浏览器中
热门文章
- DB,DBMS,DBS之间的关系
- 先用knn对数据集进行预处理再利用神经网络对数据集进行分类_监测大型民用结构的无线传感系统(二)——数据处理...
- Sparse coding(稀疏编码)
- java设计画图工具下载_java 版画图工具
- linux中FT4232H设备驱动添加,USB转4串口芯片FT4232HL,FT4232HQ
- USB端口的打印机映射成LPT并口
- PySide6 布局管理
- 图书管理系统(简单版)面向对象程序设计c++
- 408考研大纲计算机网络,2021计算机考研408大纲:计算机网络部分解析及备考指导...
- Teststand-控件