Veusz教程(1)

您所在的位置:网站首页 ps如何导出数据组文件格式 Veusz教程(1)

Veusz教程(1)

2024-07-15 12:56| 来源: 网络整理| 查看: 265

Veusz相关博文: (1)Veusz教程(1)——导入数据 (2)Veusz教程(2)——创建数据集 (3)Veusz教程(3)——源码编译 (4)Veusz教程(4)——文本标注

Veusz是依靠优秀的开源免费科学绘图软件,与Origin功能相似,3.0版本开始已经支持绘制三维图,导出格式支持svg,emf等矢量图格式,以及常规的jpg,png格式。先说一下其他几个类似origin的免费软件:

1)QtiPlot:试用版只有20分钟使用时间 2)SciDavis:类似QtiPlot,功能较少

QtiPlot和SciDavis都很像Origin,但是笔者并不觉得这是优点,主要是绘图不够方便,接触了Veusz之后才发现绘图原来可以这么方便!距离一下简单例子: 1)切片控制绘图范围。比如有数据x,y,数据长度为10000,我们只想绘制其中的一部分,例如从100-300,那么在x数据使用切片x[100:300]即可完成,无须对y操作,因为Veusz是使用Python开发的,还使用了numpy库,功能还是很强大的; 2)LaTeX字符可以直接输入。我们的标签值很多时候需要希腊字符、数学公式等,可以直接在 Label输入; 3)方便控制默认图像格式。如字体、坐标轴等,字体已经默认为times new zone,大小也合适;

本博客主要介绍Veusz导入数据的功能。 主要介绍下面三种数据格式的导入: (1)常规数据(空格间隔每列数据) (2)CSV数据(逗号分隔文本文件) (3)二维数据(含x,y两列数据)

常规数据

通常我们处理实验数据的时候都需要拟合,假如我们有这样一组数据:

x, y_true, y_fit, err x为横坐标,y_true为实验真值,y_fit为拟合值,err为拟合误差,误差种类分为symmetric和asymmetric(包括positive和negative)

(1)没有表头的数据具体例子如下:

1 1 1.800346741 0.800346741 2 2 2.986886845 0.986886845 3 3 3.664458003 0.664458003 4 4 4.918506782 0.918506782 ...

注意: 每列数据是空格空开的,如果原来的数据是csv文件,那么可以通过文本编辑器的查找替换功能将逗号’,'替换为空格

(2)带有表头的数据格式如下:

x y_true y_fit err 1 1 1.800346741 0.800346741 2 2 2.986886845 0.986886845 3 3 3.664458003 0.664458003 4 4 4.918506782 0.918506782 5 5 5.533504617 0.533504617 6 6 6.494615196 0.494615196 ...

这两种数据格式都可以使用veusz导入

打开导入数据对话框

在这里插入图片描述

导入数据,选择数据变量名称

在这里插入图片描述 对于含误差值的数据导入例子,下面给出官方例子,这里就不作翻译了。

Examples x y x and y with no errors (2 columns for 2 datasets) x,+- x with symmetric errors (2 columns for single dataset) y + - y with asymmetric errors (3 columns for dataset) x[1:5]+,- x_1 to x_5, each with asymmetric errors (15 columns in total) x y +- x with no errors, y with symmetric errors (3 columns in total) ,x,y,-,+ skip first column, x with no errors, y followed by negative then postive error bars

在这里插入图片描述 在这里插入图片描述

CSV数据

仍以前面的例子为例:

在这里插入图片描述 在这里插入图片描述

注意:导入CSV文件无法合并误差数据,误差值会单独成一列数据,为了方便可以按照前面方法处理带有误差的数据,即先在其他文本编辑器将数据处理为空格间隔。

二维数据

假设我们有由Python生成的二维数据:

from pylab import * import pandas as ps x,y = mgrid[-4:4:40j,-3:3:30j] z=(1-x)**2+100*(y-x**2)**2 z = pd.DataFrame(z) z.to_csv('D:/surfacedata.csv')

这里构建了40x30大小的二维数据,下面我们导入这个csv文件,对话框中选择2D 在这里插入图片描述 如果这样直接导入会报错:

Error importing datasets: Could not convert data to 2D matrix

问题出现在没有勾选Grid points at edges ,重新设置 在这里插入图片描述 从结果可以看出已经是二维的了 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3