笨笨长期以来一直使用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。即把数据复制到了剪贴板了。假设你想保存到文件,仅仅须要再利用一下记事本就可以。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

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

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

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

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

A9.2 CChart数据读取

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

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

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

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

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

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

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

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

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

A9.3简单数据处理

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

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

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

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

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

  1. 深入浅出CChart 每日一课——快乐高四第六课 二丫的青梅,返璞归真之普通窗体多区域画图

    有好些朋友给我反映,就是一个窗体中加入好几个CChartWnd之后.工作不正常.这个的确是这样,CChartWnd会接管原来窗体的消息循环,加入多个CChartWnd之后,就相当于出租房转手好几道,消 ...

  2. Mysql内置功能《四》存储过程

    存储过程 一 存储过程介绍 存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中,通过调用它的名字可以执行其内部的一堆sql 使用存储过程的优点: #1. 用于替代程序写的SQL语句,实 ...

  3. JSP第四篇【EL表达式介绍、获取各类数据、11个内置对象、执行运算、回显数据、自定义函数、fn方法库】

    什么是EL表达式? 表达式语言(Expression Language,EL),EL表达式是用"${}"括起来的脚本,用来更方便的读取对象! EL表达式主要用来读取数据,进行内容的 ...

  4. centos Linux系统日常管理1 cpuinfo cpu核数 命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ,lsof ,pidof 第十四节课

    centos Linux系统日常管理1  cpuinfo cpu核数   命令 w, vmstat, uptime ,top ,kill ,ps ,free,netstat ,sar, ulimit ...

  5. NeHe OpenGL教程 第四十七课:CG顶点脚本

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  6. centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课

    centos vmware centos6.6 64位 kvm虚拟化安装配置     第四十二节课 上半节课 下半节课 f

  7. NeHe OpenGL教程 第四十三课:FreeType库

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  8. NeHe OpenGL教程 第四十课:绳子的模拟

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  9. centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask 第四节课

    centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask  第四节课 ...

随机推荐

  1. 前端总结·基础篇·CSS

    前端总结·基础篇·CSS 1 常用重置+重置插件(Normalize.css,IE8+) * {box-sizing:border-box;}  /* IE8+ */body {margin:0;}  ...

  2. Java中利用随机数的猜拳游戏

    Java中利用随机数的猜拳游戏,实现非常简单,重难点在于随机数的产生. 首先GameJude类是用于判断输赢的一个类: package testGame; public class GameJudge ...

  3. C - Pocket Book(set)

    Problem description One day little Vasya found mom's pocket book. The book had n names of her friend ...

  4. 常用GC算法

    在C/C++中是由程序员自己去申请.管理和释放内存的,因此没有GC的概念.而在Java中,专门有一个用于垃圾回收的后台线程来进行监控.扫描,自动将一些无用的内存进行释放.下面介绍几种常见的GC算法. ...

  5. 有关PHP里的Cookie

    会话技术:Cookie,Session: Cookie是客户端技术,服务器把每个用户的数据以Cookie的形式保存在用户各自的浏览器,当用户用浏览器再次访问服务器的web资源时则会带着各自的数据去了: ...

  6. 织梦忘记密码DedeCMS密码重设工具radminpass找回密码

    本工具是用于新人忘记管理员密码重设所制作,只需要将radminpass.php文件拷贝到根目录,运行“http://yousite/radminpass.php(yousite为网站域名)”,按照操作 ...

  7. 对比JavaScript的入口函数和jQuery的入口函数

    JavaScript的入口函数要等到页面中所有的资源(包括图片.文件)加载完成才开始执行. jQuery的入口函数只会等待文档数加载完成就开始执行,并不会等待图片.文件的加载.

  8. (转载)activity外部调用startActivity的new task异常解析

    activity外部调用startActivity的new task异常解析 泡在网上的日子 / 文 发表于2013-09-07 12:45  第1314次阅读 异常,android,activity ...

  9. vs2012下 error4996

    原文链接:http://blog.csdn.net/xidianzhimeng/article/details/11457045 分类: VS使用学习 2013-09-09 08:37 24人阅读 评 ...

  10. 创建一个dynamics CRM workflow (四) - Development of Custom Workflows

    首先我们需要确定windows workflow foundation 已经安装. 创建之后先移除MyCustomWorkflows 里面的 Activity.xaml 从packages\Micro ...