深入浅出CChart 每日一课——快乐高四第九课 于无声处,CChart内置功能介绍之数据存取篇

笨笨长期以来一直使用Origin软件画图和处理数据,但Origin软件没有编程语言的接口。笨笨开发CChart的一个潜在的目标。是想实现Origin软件的功能。当然这是一个不可能达到的目标。Origin软件的功能太强了。笨笨仅仅能膜拜。

下节课将介绍CChart内置的数据处理功能,这是笨笨向Origin的致敬。

在这之前。本节课首先介绍一下CChart内置的数据存取功能。

A9.1 CChart数据保存

假定我们绘制了如图的两条曲线。

假设要保存全部曲线数据,请点击右键菜单“曲线数据-->保存数据”,将弹出一个“多数据加载存储选项”对话框。

这里有两个选项,连续存储和共享X坐标数据。

首先我们试试两个选项都不选,点击继续,弹出“另存为”对话框。

保存的数据文件格式为TXT文本文件文件。

以下打开保存的数据文件。例如以下。

得到的数据文件由4列数据组成,当中前两列是第一条曲线的x坐标和y坐标。后两列是第二条曲线的x坐标和y坐标。

以下解释一下“多数据加载存储选项”对话框的两个选项。

假设选择“连续存储”选项,所得到的数据文件例如以下。

能够看到,数据文件是依照曲线的顺序依次存储的。为了区分不同的曲线。两条曲线之间有一个分隔符,这个分隔符也是在前面对话框里面设置的。

再看看选择“共享X轴坐标数据”后的情况。

这时候数据文件仅仅有三列。第一列是全部曲线的X坐标,第二列是第一条曲线的Y坐标,第三列是第二条曲线的Y坐标。只是选择这个选项须要你自己保证曲线的X坐标的确是一样的,CChart保存的实际上是第一条曲线的X坐标。

当然也能够保存单条数据。这时候须要点击菜单“曲线数据-->数据名-->管理-->保存数据”。

假设仅仅是看一下数据,还能够点击菜单“曲线数据-->显示数值”。

这时候弹出一个窗体。

这是一个表格,表格里面前两列是第一条曲线的坐标,后两列是第二条曲线的坐标。

假设点击菜单“曲线数据-->数据名-->管理-->显示数值”。也会弹出这么一个窗体,窗体里的内容仅仅是那一条曲线的数据。

在这个表格窗体里面也能够把数据保存到文件。如图,你首先要选择你想保存的数据区域,然后点击右键菜单Copy data。即把数据复制到了剪贴板了。假设你想保存到文件,仅仅须要再利用一下记事本就可以。

我们拖动鼠标划过第一行1、2、3、4四个格子,就可以选择所有数据。以下先拷贝数据。再打开Excel软件,在A1格子选择粘贴。结果如图。

这么简单就实现了和Excel软件的交互!

以下再用Excel画个曲线试试看。

和CChart画出来的图相比,Excel的图像效果是不是真心弱爆了呢?

A9.2 CChart数据读取

CChart数据读取与数据保存是逆过程,文件的格式要求是一样的。

前面已经按三种格式保存了数据文件。

前面程序中画了两条曲线。以下我们首先点击菜单“曲线数据-->数据名-->管理-->清除数据”,删除掉一条曲线。如图。

这时候我们再点击右键菜单“曲线数据-->加载数据”,将又弹出“多数据加载存储选项”对话框。

点击“继续”后,弹出“打开”文件对话框。

这时候我们选择一个刚才保存的数据文件并打开。注意前一步“多数据加载存储选项”对话框里面的选项。应与保存这个文件时候的选项一致。

当然假设数据文件中面仅仅有一条曲线,那这些选项就无所谓了。

读入的数据里面是两条曲线,原来另一条。怎么少了一条呢?呵呵。有两条重合在一起了。

右键菜单“曲线数据-->数据名-->管理-->读取数据”的功能类似,只是这个菜单读入的数据将替换掉该曲线原有的数据。

A9.3简单数据处理

在右键菜单“曲线数据-->数据名-->管理”以下。直接提供了两个简单的数据处理功能。一个是交换XY坐标。一个是数据排序。

这两幅图是一条曲线交换XY坐标前后的情况。

数据排序有四种方式,分别为X升序。X降序,Y升序,Y降序。以下两幅图是分别为排序前和按X升序排列后的情况。

CChart数据存取功能临时就介绍这么多。希望大家不要有然并卵的感觉。下节课再见。

时间: 06-03

深入浅出CChart 每日一课——快乐高四第九课 于无声处,CChart内置功能介绍之数据存取篇的相关文章

深入浅出CChart 每日一课——快乐高四第十一课 不离不弃,利用CChartWnd实现多区域绘图

笨笨在前面的课程里面提到,在一个窗口上不能粘多个CChartWnd,否则图像不正常,故而在高四6到8课,均使用CChart类,实现了在普通窗口.对话框窗口.DuiLib窗口上的多区域绘图. 使用CChart类必须手动处理消息,而采用CChartWnd类省去了处理消息的步骤,编程更为简便. 近几天笨笨进行了一些改进,采用CChartWnd类也可以在一个窗口上多区域绘图了. 1 首先按照前面的步骤建立一个基于Win32 Application的程序,名为LessonA11. 2 在WndProc函数

深入浅出CChart 每日一课——快乐高四第十四课 枝头红杏,Win32标准控件ChartCtrl之围城

本节课笨笨继续介绍ChartCtrl控件在DuiLib中的应用. 请大家先复习高四第三课. 本节课的方法和这一课的方法差不多,由于笨笨提供了ChartCtrl这个新工具,所以编程可以有一定的简化. 首先,XML文件和高四第三课完全一样. 其次,cpp文件只有CreateControl部分有所修改,如下.当然,前面那个CChartWnd变量不需要了. virtual CControlUI* CreateControl(LPCTSTR pstrClassName) { if (_tcsicmp(ps

深入浅出CChart 每日一课——快乐高四第十课 见微知著,CChart内置功能介绍之数据处理篇

CChart内置数据处理功能默认是不打开的.要打开数据处理功能,请点击菜单"绘图状态-->特别功能-->允许数据处理",这时菜单"曲线数据-->数据名"下,将多出一个"数据处理"菜单,如图所示. 可以看到,笨笨内置了四种数据处理功能,线性变换.微积分.数据平滑.数据拟合. A10.1线性变换 "线性变换"菜单提供了三个功能,分别是偏移.缩放.变换.这三个功能都非常简单,只要看看弹出的对话框就全明白了. 可见,

深入浅出CChart 每日一课——快乐高四第十六课 老马识途,ChartCtrl控件在WTL中的使用

这几天有个朋友想在WTL下使用ChartCtrl控件,因此笨笨在这里也写一个简单的教程. 要使用WTL当然要先安装它. 笨笨在这里介绍两个例子,一个是WTL对话框界面,一个是WTL单文档SDI界面. A16.1 WTL对话框界面 第一步,首先用AppWizard建立一个基于对话框的WTL程序LessonA16. 第二步,在主对话框资源IDD_MAINDLG上添加一个Custom Control控件,其ID设置为IDC_CHART,class设置为ChartCtrl. 第三步,拷贝库文件. 第四步

深入浅出CChart 每日一课——快乐高四第七课 铁蛋的竹马,返璞归真之对话框窗口多区域绘图

上一课笨笨给大家介绍的是在普通窗口上多区域绘图,本课将介绍对话框下的情形.由于对话框的消息循环和普通窗口有一些区别,所以在具体操作上略有不同,下面的处理过程可以供大家参考. 第一步,打开VC,建立一个基于MFC AppWizard(exe)向导的项目LessonA07.向导中选择Dialog Based,其它不做任何更改,直接点Finish. 第二步,拷贝库文件到LessonA07文件夹中, 第三步,在VC界面的资源编辑器中,删除掉对话框中间的"TODO: 在这里设置对话控制."这个标

深入浅出CChart 每日一课——快乐高四第十三课 月上柳梢,Win32标准控件ChartCtrl之牵手

上节课笨笨介绍了新增加的ChartCtrl控件,是在对话框中使用的.本节课简单介绍这个控件的另一种用法. 首先按照以前的步骤建立一个Win32Application. 增加WM_CREATE消息的响应例程如下. case WM_CREATE: HWND hW; hW = CreateWindow(_T("ChartCtrl"), _T("Cap"), WS_CHILD | WS_VISIBLE, 20, 20, 600, 400, hWnd, NULL, hInst

8.5高阶函数、递归函数和内置函数

高阶函数.递归函数和内置函数 高阶函数和递归函数 #函数名可以进行赋值,可以作为函数参数,可以作为返回值 #高阶函数:允许导入函数作为参数导入或者返回值为函数 def f(n): return n*n def fun(a,b,fun1): an1=fun1(a)+fun1(b) return (an1) print(fun(1,2,f)) def sqrt(n): return n*n def function(a,b,function1): answer=function1(a)+functi

高阶函数、递归函数、内置函数

这里我们学习的是: 高阶函数 递归函数 内置函数 参数分类: # 这里的参考文章是:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431752945034eb82ac80a3e64b9bb4929b16eeed1eb9000'''函数的参数的分类:必选参数默认参数可变参数关键字参数命名关键字参数 调用的顺序就是,必选参数-默认参数-可变参数-命名关键字参数-关键字参数

课下参考四 linux的ssh服务实现多用户登录linux系统--windows客户端篇

********************************************** 本教程使用windows做为客户端,登录centos6.7系统. ssh客户端软件为SecureCRT7.1 ********************************************** 1.利用SecureCRT生成ssh公钥(RSA) 第一步:密钥对的生成. 在SecureCRT中建立一个新的连接. protocol选ssh2 hostname输入要连接的主机IP. Port输入目标