社区
C#
帖子详情
c#chart 控件极坐标图用addxy添加数据点时界面卡顿
qq_21961911
2015-04-28 08:09:13
如题,在一个线程中循环接收网口的数据x和y,用addxy(x,y)添加数据点,界面卡顿,点击按钮要很久才响应。
请大神指点一下,谢谢!
...全文
705
7
打赏
收藏
c#chart 控件极坐标图用addxy添加数据点时界面卡顿
如题,在一个线程中循环接收网口的数据x和y,用addxy(x,y)添加数据点,界面卡顿,点击按钮要很久才响应。 请大神指点一下,谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
stherix
2016-10-29
打赏
举报
回复
网口来的数据的话 不停的添加肯定会有问题 因为你无法保证网口数据的速度 来得快自然界面就卡 最好是定时去更新
ssss23243
2016-10-28
打赏
举报
回复
加一个form定时器定时刷新图表,能完美解决
redshiliu
2015-04-30
打赏
举报
回复
循环中加个Thread.Sleep(0);
zyc79490433
2015-04-30
打赏
举报
回复
谢谢您的回复,可是英文我实在看不太懂,我是新手,请大神给我指导一下怎么解决这个问题,谢谢!!
zyc79490433
2015-04-30
打赏
举报
回复
谢谢您的回复,可是英文我实在看不太懂,我是新手,请大神给我指导一下怎么解决这个问题,谢谢!!
zyc79490433
2015-04-30
打赏
举报
回复
谢谢您的回复,可是英文我实在看不太懂,我是新手,请大神给我指导一下怎么解决这个问题,谢谢!!
赵4老师
2015-04-29
打赏
举报
回复
Multiple Threads in the User Interface
http://msdn.microsoft.com/zh-cn/library/ms810439.aspx
Delphi生成
Char
t柱状图表
控件
附效果演示.rar
Delphi7.0源码生成一个柱状图表
char
t,使用了ntdll.dll,这个直方图表效果如图所示。使用了第三方
控件
实现的图表制作生成软件,功能比较强大。以下是图表测试源代码:
Char
t := T
Char
t.Create(nil); try
Char
t.Parent := Application.MainForm;
Char
t.Visible := False;
Char
t.Title.Text.Text := '测试图表'; S := TBarSeries.Create(
Char
t);
Char
t.
Add
Series(S); S.Title := '嘿嘿'; S.
Add
XY
(1, 56, '一月', clGreen); S.
Add
XY
(2, 67, '二月', clYellow); S.
Add
XY
(3, 34, '三月', clBlue); S.
Add
XY
(4, 78, '四月', clRed);
Char
t.View3D := False;
Char
t.BackColor := clWhite;
Char
t.Gradient.StartColor := clWhite;
Char
t.Gradient.EndColor := clWhite;
Char
t.Gradient.Visible := True; TmpFile := Application.ExeName '.bmp';
Char
t.SaveToBitmapFile(TmpFile); Img1.Picture.LoadFromFile(TmpFile); finally
Char
t.Free; end;
使用
Char
t
控件
实现生理信号的实时显示
针对生理信号测量
数据
采集过程中实时显示、调节信号的实际需求,采用基于Delphi 7. 0的Tee
Char
t
控件
开发了显示多通道不同采样频率生理信号
数据
图形的系统,采用Delete()函数和
Add
XY
()函数配合实现信号的滚动显示;采用SetMinMax()函数改变纵坐标范围的最大、最小值实现信号幅度的调节;采用控制
Char
t窗口的显示
数据
点数多少来调节信号的显示速度,深入探讨了Tee
Char
t
控件
实现实时生理信号波形显示的编程方法,给出了详细的例程。实验结果表明,使用Tee
Char
t
控件
进行实时画图的方法可以实现多通道、多条曲线的叠加实时显示、调节,提高了编程效率,比传统的作图方法更有优势。
ArcMap中
add
xy
data功能
ArcMap中
添加
点
数据
时,有时候在对话框中显示不出来
XY
Z
数据
列,该文档能够解决此问题。
C++程序设计基础实例教程
C++ 第一章 C++基础知识 1.1 程序设计基本概念 1. 程序=算法+
数据
结构 2. 算法:解决问题所列出来的步骤 3. 程序设计语言:面向机器的语言;`面向过程的语言;面向对象的语言 4. 先进的模块化的程序设计思想 1.2 C++语言的发展 汇编语言 BCPL语言(Base compined Programing Language) 面向过程的C语言: C、Turbo C 面向对象的C语言:C++、
C#
、 Visual C++、 Visual C++.NET 1.3 面向对象的程序设计 1.抽象和封装—对象 2. 类 2.派生和继承 3.多态性 1.4 C++语言的程序结构 顺序结构 选择结构 循环结构 1.5 C++语言的作用 1. 求解计算问题 2. 大量
数据
的处理 3. 编写应用软件 4. 编写系统软件 1.6 C++语言的特点 精练、简洁、灵活、方便 运算符丰富,表达能力强 能部分代替汇编语言 目标代码效率高 可移植性好 支持面向对象的程序设计 语言向下、向上的兼容性强 有很强的
数据
处理能力 1.7 C++语言程序及程序结构 例1. 在屏幕上显示出”One World, One Dream” 程序如下: //EX1_1.CPP /* This program demonstrates the construction of a c++ program file */ #include
main() /*主函数标记(名字)*/ { cout<<(“One World, One Dream”); } 例2:从键盘上输入两个数,求这两个数的和。 程序如下: #include "iostream.h" int
add
xy
(int a, int b)
温度采集代码
温度采集代码 上位机部分源程序: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, CPort, ExtCtrls, RzBorder, StrUtils, StdCtrls, RzLabel, iComponent, iVCLComponent, iCustomComponent, iPlotComponent, iPlot, RzButton, iPlotChannel, RzPanel, Mask, RzEdit; type TForm1 = class(TForm) iPlot1: TiPlot; RzPanel1: TRzPanel; RzLEDDisplay1: TRzLEDDisplay; RzLabel1: TRzLabel; RzLabel2: TRzLabel; RzPanel2: TRzPanel; RzLabel3: TRzLabel; ComPort1: TComPort; procedure ComPort1RxFlag(Sender: TObject); procedure iplot_init(); procedure FormCreate(Sender: TObject); procedure COMM_init(); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end; var Form1: TForm1; px:word; implementation {$R *.dfm} //**************************************************************************** //---窗体创建过程--- //**************************************************************************** procedure TForm1.FormCreate(Sender: TObject); begin COMM_init(); // 串口
控件
的初始化 iplot_init(); // 曲线图的初始化 end; //**************************************************************************** //---串口接收到标志字节产生中断--- //**************************************************************************** procedure TForm1.ComPort1RxFlag(Sender: TObject); var str:string; begin // 以字符串的形式从串口读取
数据
ComPort1.ReadStr(str,33); // 去掉
数据
帧的头和尾直接显示 RzLEDDisplay1.Caption:='+'+MidStr(str,2,5); // 在曲线图上绘一个点 iPlot1.Channel[0].
Add
XY
(px,StrToFloat(RzLEDDisplay1.Caption)); iPlot1.Channel[1].
Add
XY
(px,0); // 跟随绘制0刻度线 iPlot1.Channel[2].
Add
XY
(px,iPlot1.Channel[0].GetYMax); iPlot1.Channel[3].
Add
XY
(px,iPlot1.Channel[0].GetYMin); px:=px+1; end; //**************************************************************************** //---初始化曲线图--- //**************************************************************************** procedure TForm1.iplot_init(); begin iPlot1.RemoveAllChannels; // 移除所有通道 iPlot1.RemoveAllXAxes; // 移除所有X轴 iPlot1.TitleText:='实时温度曲线'; // 设置曲线图的标题 //iPlot1.TitleVisible := False; // 不显示曲线图标题 iPlot1.YAxis[0].Span := 100; // 设置Y轴的显示范围 iPlot1.YAxis[0].Min:=-15; // 设置Y轴的起始值 iPlot1.YAxis[0].Title:='温度值(℃)'; // Y轴名称 iPlot1.YAxis[0].TitleShow:=True; //---配置温度曲线--------------------------------------------------- iPlot1.
Add
Channel; //
添加
一个曲线 iPlot1.Channel[0].TitleText := '温度'; // 设置曲线的名称 iPlot1.Channel[0].Color := clRed; // 设置曲线的颜色 // 曲线插值,加上下面这一句显示的曲线不会有棱角 iPlot1.Channel[0].InterpolationStyle := ipistCubicSpline; iPlot1.Channel[0].TraceLineWidth := 2; // 曲线显示的宽度 iPlot1.
Add
XAxis; //
添加
一个X轴 iPlot1.XAxis[0].Title:='采样时间(S)'; // X轴名称 iPlot1.XAxis[0].TitleShow:=True; iPlot1.XAxis[0].Span := 200; // X轴显示范围 iPlot1.Channel[0].XAxisName := iPlot1.XAxis[0].Name; iPlot1.XAxis[0].LabelsFont.Color := clRed; // 标签字体颜色 //---配置0刻度线--------------------------------------------------- iPlot1.
Add
Channel; //
添加
一个曲线 iPlot1.Channel[1].TitleText := '0刻度'; // 设置曲线的名称 iPlot1.Channel[1].Color := clYellow; // 设置曲线的颜色 iPlot1.Channel[1].TraceLineWidth := 2; // 曲线显示的宽度 iPlot1.Channel[1].XAxisName := iPlot1.XAxis[0].Name; //---配置峰值跟踪显示线--------------------------------------------------- iPlot1.
Add
Channel; //
添加
一个曲线 iPlot1.Channel[2].TitleText := '峰值跟踪'; // 设置曲线的名称 iPlot1.Channel[2].Color := clBlue; // 设置曲线的颜色 iPlot1.Channel[2].TraceLineWidth := 2; // 曲线显示的宽度 iPlot1.Channel[2].XAxisName := iPlot1.XAxis[0].Name; //---配置谷值跟踪显示线--------------------------------------------------- iPlot1.
Add
Channel; //
添加
一个曲线 iPlot1.Channel[3].TitleText := '谷值跟踪'; // 设置曲线的名称 iPlot1.Channel[3].Color := clLime; // 设置曲线的颜色 iPlot1.Channel[3].TraceLineWidth := 2; // 曲线显示的宽度 iPlot1.Channel[3].XAxisName := iPlot1.XAxis[0].Name; end;
C#
110,539
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章