青蓝忘情水 发表于 2005-11-28 12:41

请教一个问题,急等

我做得SA测量了很多数据。现在要分析这些数据,要画一个坐标轴,然后把所有数据填进去,然后得到曲线,最后分析这个曲线,请问有没有这种软件?那么多数据看得我眼都晕了,在线等$惨啊$$怕怕$

希望明天会更好 发表于 2005-11-28 15:01

ORIGIN
http://www.originlab.com/

青蓝忘情水 发表于 2005-11-28 17:31

好东东,谢谢啦

woo2333 发表于 2005-11-28 21:39

Jfreechart

青蓝忘情水 发表于 2005-11-28 21:52

?。。。。。。。。。

gaga 发表于 2005-11-29 01:05

Office的Excel可以做图。而且微软的东西向来是简单易学(虽然不够专业)。
比如把数据填入,选中,然后菜单里有chart,选一种类型就可以了。

不知道你要什么样的分析功能。像函数拟合(fitting)之类的,Excel还可以胜任。复杂一些的数值分析就要用Origin或者Igor等专业作图软件了。

青蓝忘情水 发表于 2005-11-29 02:15

师父,您来啦,^_^,我今天就是用EXCEL处理的,我的AUFGABE很简单不需要那么复杂的数据分析。EXCE以前没用过,今天边学边用呢。
我的题目是两种不同的光纤熔接,然后测量Spleißstelle 的Dämpfung。我测了很多数据--1250组然后要做曲线,分析有那些因素影响衰减,所以EXCEL应该就够用了。
我开始是用手自己画,因为数据量很大,我好不容易花了一天功夫画好了,结果发现一点小地方弄错了,那就要重新画,所以才想用软件(本来想说人笨就用笨办法,可是太费时间啦)

gaga 发表于 2005-11-29 02:27

原帖由 青蓝忘情水 于 2005-11-29 01:15 发表
师父,您来啦,^_^,我今天就是用EXCEL处理的,我的AUFGABE很简单不需要那么复杂的数据分析。EXCE以前没用过,今天边学边用呢。
我的题目是两种不同的光纤熔接,然后测量Spleißstelle 的Dämpfung。我 ...

我可不是师父$怕怕$
看起来软件只能帮你作图了,分析的事情还是要自己去做。数值分析可以用现成的软件,物理规律要用软件处理的话需要建模。
$加油$

青蓝忘情水 发表于 2005-11-29 02:34

呵呵,从您那里学了知识,您就是师父。目前还没有碰到问题,有了问题再来请教师父:)

flyingpig 发表于 2005-11-29 08:14

"grace".I use the version for linux.Not sure if the version forwindows works well.The URL is:

http://plasma-gate.weizmann.ac.il/Grace/

gaga 发表于 2005-11-29 13:06

原帖由 flyingpig 于 2005-11-29 07:14 发表
"grace".I use the version for linux.Not sure if the version forwindows works well.The URL is:

http://plasma-gate.weizmann.ac.il/Grace/


相比之下gnuplot更值得学,不要太着迷GUI了,gnuplot的命令行里面可以实现的东西要强大很多,也更容易和其他程序集成在一起。

现在我的工作基本上c++写计算模块,perl去自动化大量的计算逻辑,调用gnuplot作图生成eps,再建立tex文件,最终直接生成pdf做结果归档。把一切工作写成一个makefile,让它自己去转好了。想想两年前的工作模式:vc+windows+一大堆自己写的通用GUI程序,真是完全不同的世界。

flyingpig 发表于 2005-11-29 18:57

原帖由 gaga 于 2005-11-29 12:06 发表



相比之下gnuplot更值得学,不要太着迷GUI了,gnuplot的命令行里面可以实现的东西要强大很多,也更容易和其他程序集成在一起。

现在我的工作基本上c++写计算模块,perl去自动化大量的计算逻辑,调用gnupl ...
我以前用gnuplot, 但gnuplot在plot方面的功能不如grace强, plot的效果也远远不如grace好.我是用这些软件plot数据, 用来写paper的, 不跟程序集成, 所以单就写paper, 文档而言, 我比较喜欢grace.以前用gnuplot老觉得不爽, 问了很多人发现他们都是用xmgr(grace的前身), 所以就试了一下, 发现在paper中效果特别好, 特别清楚, 比gnuplot的效果好了很多.你需要程序继承的功能, 可能gnuplot会好用写.呵呵.

gaga 发表于 2005-11-29 21:04

大概gnuplot对我来说够用了吧。不知道你说的在文档里特别清楚是指屏幕上还是打印上。eps在屏幕上显示的效果和其嵌入的预览图片有关,gnuplot生成的eps默认的屏幕显示效果是不怎么样,不过打印的话是没有区别的。

gnuplot的功能应该足够强大了,官方主页上有演示 http://gnuplot.sourceforge.net/demo/ ,几乎没有不能画的东西了吧。。。1D2D3D4D都有,每一次翻手册都能发现一堆没研究过的功能,几乎能想到的和作图有关的东西他们都实现了,缺点就是都是命令行。期待他们的opengl的term实现。
而grace的主页上好像说是做2D图形的?有时间我去试试看,对于少量的作图也许不错(可惜我们买了好多Igor和Origin的licences)

------------------
以上文本借助www.InputKing.com在线中文输入系统输入

flyingpig 发表于 2005-11-29 21:19

原帖由 gaga 于 2005-11-29 20:04 发表
大概gnuplot对我来说够用了吧。不知道你说的在文档里特别清楚是指屏幕上还是打印上。eps在屏幕上显示的效果和其嵌入的预览图片有关,gnuplot生成的eps默认的屏幕显示效果是不怎么样,不过打印的话是没有区别的。
...
主要是我比较懒得花时间去看gnuplot的文档, 所以不是特别清楚gnuplot是不是很强大.呵呵.grace提供的用户界面比较友好, 只要自己看着tool研究一下就会用了.我下载安装后花了30分钟, 看了看软件带的几个例子, 就实现了我要的功能.功能对我来说也足够了.打印的效果grace要好很多.我比较了我的两篇paper, 一篇用gnuplot画, 另一个用grace话, 我是先生成.eps, 然后转成.pdf.不管屏幕效果还是打印效果grace都好很多, 特别清楚.

gaga 发表于 2005-11-29 21:46

原帖由 flyingpig 于 2005-11-29 20:19 发表

主要是我比较懒得花时间去看gnuplot的文档, 所以不是特别清楚gnuplot是不是很强大.呵呵.grace提供的用户界面比较友好, 只要自己看着tool研究一下就会用了.我下载安装后花了30分钟, 看了看软件带的几个例子 ...


按说没道理阿,不就是矢量线条,谁来画应该都一样吧。改天用用看,或许有别的什么门道。

gnuplot不难学,直接从那个demo网页翻到合适的样子,看一下例子代码,复制修改就可以了。最多看看手册如何操作那些term,选择是输出到屏幕还是特定格式的文件就行了。


------------------
以上文本借助www.InputKing.com在线中文输入系统输入

flyingpig 发表于 2005-11-29 22:09

原帖由 gaga 于 2005-11-29 20:46 发表



按说没道理阿,不就是矢量线条,谁来画应该都一样吧。改天用用看,或许有别的什么门道。

gnuplot不难学,直接从那个demo网页翻到合适的样子,看一下例子代码,复制修改就可以了。最多看看手册如何操作那 ...
我是2年前用gnuplot, .eps的效果还能接受, 不放到paper中看大图效果还成, 等转成.pdf后放到paper中就不忍目睹.在paper中图片size比较小, 高度大概paper的1/6.后来看很多人用xmgr(grace), 哪怕图片很小, e.g., 占paper 1/10, 但效果还是特别好.所以我改用grace.现在不管图多小, 效果都特别好.如果你以后有空比较这两个的效果, 告诉我结果怎样.我也想知道是不是因为我用的gnuplot版本太低或者使用方法不当导致效果不好.呵呵.

greenflute 发表于 2005-12-2 18:27

两位学什么的呀?$学习了$

青蓝忘情水 发表于 2005-12-4 20:22

我现在还没有正式还是处理数据那,而且时间紧,我只想用一个能很快学会,又能满足要求的的软件,等以后有时间再研究其他的吧(我总是临阵磨枪)

flyingpig 发表于 2005-12-4 20:36

原帖由 greenflute 于 2005-12-2 17:27 发表
两位学什么的呀?$学习了$
我是computer science, gaga应该是info.

gaga 发表于 2005-12-5 01:23

原帖由 flyingpig 于 2005-12-4 19:36 发表

我是computer science, gaga应该是info.

我是学物理的

flyingpig 发表于 2005-12-5 05:09

原帖由 gaga 于 2005-12-5 00:23 发表


我是学物理的
然后做IT工作?

gaga 发表于 2005-12-5 16:05

原帖由 flyingpig 于 2005-12-5 04:09 发表

然后做IT工作?

没有了,就是做物理。IT只是感兴趣。不打算改行。

国内的IT几乎就是买cisco设备,买oracle数据库,然后拉几个人写用户界面,然后去布线。所以考证在国内找工作很重要。所以国内干IT的没有多少是学IT的(我有好几个物理专业毕业的朋友都在IT混,毕业2,3年就开始折腾千万到上亿的项目,无语)。学习和研究IT还是在国外比较好吧。

wero 发表于 2005-12-5 18:22

原帖由 gaga 于 2005-11-29 20:46 发表



按说没道理阿,不就是矢量线条,谁来画应该都一样吧。改天用用看,或许有别的什么门道。

gnuplot不难学,直接从那个demo网页翻到合适的样子,看一下例子代码,复制修改就可以了。最多看看手册如何操作那 ...
gnuplot毛病还是有一些的
比如如果x为time而要求精确度到秒以内就会出现大问题
这时候只能使用数值量做偏移x值

另外对较大数据也没个准确处理时间很多时候画面居然静止
现实中我有时需要显示超过1G的数据,没办法 最后还是我自己写了一个分层的程序
把数据首先打碎然后象jpg文件那样按级别分层然后再上面使用2分查找去判断
当前位置...$汗水$$汗水$

当然以上的问题也不简单是gnuplot的问题不过在稍微大点的数据下它还是太脆弱

wero 发表于 2005-12-5 18:24

原帖由 青蓝忘情水 于 2005-12-4 19:22 发表
我现在还没有正式还是处理数据那,而且时间紧,我只想用一个能很快学会,又能满足要求的的软件,等以后有时间再研究其他的吧(我总是临阵磨枪)
excel比较好但数据量小于30k对,好象

gaga 发表于 2005-12-5 19:11

原帖由 wero 于 2005-12-5 17:22 发表

gnuplot毛病还是有一些的
比如如果x为time而要求精确度到秒以内就会出现大问题
这时候只能使用数值量做偏移x值

另外对较大数据也没个准确处理时间很多时候画面居然静止
现实中我有时需要显示超过1G的数据 ...

超过1G的数据,已经不适合拿来直接显示/作图了。因为就算打印分辨率用到600dpi,也只能显示数千个点而已。如果在屏幕上显示,需要的点更少。再多的数据,也只能是重叠在一个像素列/行上。这种情况需要先做预处理(平滑滤波+重采样)。

origin对于大量数据的作图,会提供一个优化速度的功能,也就是简单的抽样显示(默认只抽样1000个点来显示),算法极其简单没有任何anti aliasing措施,经常会产生错误的作图结果(上过它好几次当)。如果自己写程序做预处理,同样需要考虑这点。滤波算法不可以随便省略。

gnuplot没有太多的数据预处理选项。而且显示效率偏低(部分原因是xwindow的效率问题),不像很多商业作图软件对显示速度做了大量的优化。而至于时间轴的问题,没有试过。如果有bug的话可以给gnuplot开发组发mail,相信很快可以解决。

btw,jpeg分层是哪一步的过程?是指DCT变换结果的zigzag排序还是指interlacing jpeg?

[ 本帖最后由 gaga 于 2005-12-5 18:15 编辑 ]

flyingpig 发表于 2005-12-5 20:23

原帖由 gaga 于 2005-12-5 15:05 发表


没有了,就是做物理。IT只是感兴趣。不打算改行。

国内的IT几乎就是买cisco设备,买oracle数据库,然后拉几个人写用户界面,然后去布线。所以考证在国内找工作很重要。所以国内干IT的没有多少是学IT的(我 ...
发现你对很多东西都很熟, 这个版上大部分都是你在回答问题.我还以为你是学IT的.呵呵.

wero 发表于 2005-12-6 10:56

原帖由 gaga 于 2005-12-5 18:11 发表


超过1G的数据,已经不适合拿来直接显示/作图了。因为就算打印分辨率用到600dpi,也只能显示数千个点而已。如果在屏幕上显示,需要的点更少。再多的数据,也只能是重叠在一个像素列/行上。这种情况需要先做预 ...

:)我使用的是windows下的gunplot,
其实是这样的,我做了一个高速数据采集器,在高速时候速度甚至大于每秒30k,
而这个海量数据是写在一个MMC卡上的
现在在把这个数据向PC上灌入时候显示时候,gnuplot就显的比较束手无策
所以我采取了边读入边处理的方式,(为了节省处理时间,不是预扫描)
等完全灌入后数据按不同层次已经分成了若干有时侯超过1000个小数据文件
比如说如果显示时间,比较大就层次比较高,否则就比较低不同层次之间是指数对应的关系
而然后,再写一个专门的处理过程去识别判断如何选择相应的文件,这里一般使用简单的二分查找就可以了

最后自动化地生成gnuplot的批文件
事实证明效果还是比较好的
这里最麻烦的是边读入边处理的算法:)既要足够粗的粒度又要基本符合要求,( 如果是预处理就简单了)整耗费了我好几天的工夫,查了好多资料

[ 本帖最后由 wero 于 2005-12-6 09:59 编辑 ]

polo 发表于 2005-12-6 10:59

我们是用MATLAB实施模拟数据输入
功能非常强大的

gaga 发表于 2005-12-6 13:25

原帖由 wero 于 2005-12-6 09:56 发表


:)我使用的是windows下的gunplot,
其实是这样的,我做了一个高速数据采集器,在高速时候速度甚至大于每秒30k,
而这个海量数据是写在一个MMC卡上的
现在在把这个数据向PC上灌入时候显示时候,gnuplot就显的比较 ...

方法很好,不过你的‘高层’的数据(猜测你的数据分层是以2的指数来抽样的)直接拿来做‘粗’显示,会有‘重采样走样失真‘。你可以用固定频率的输入数据测试一下。显示的东西不一定是你想看到的。采样定理中采样频率至少应该是数据频谱最高值的2倍,所以如果你要想得到低频率的数据处理,必须先滤波。

数据处理中的重采样走样在图片的放缩显示上很容易演示,有时间来贴几个图(也许大家都知道这个?)。

另,高速的实时信号显示不太适合用gnuplot等通用作图软件来做,一般都是自己写代码。30K的信号采样仍然是音频处理的范围,CoolEdit软件的显示效果就很棒,可以参考一下。

wero 发表于 2005-12-6 14:37

原帖由 gaga 于 2005-12-6 12:25 发表


方法很好,不过你的‘高层’的数据(猜测你的数据分层是以2的指数来抽样的)直接拿来做‘粗’显示,会有‘重采样走样失真‘。你可以用固定频率的输入数据测试一下。显示的东西不一定是你想看到的。采样定理中 ...

1 你的猜测没错我确实是以2为基数的
2层数是动态的一般不会超过6层
这里采用了一个算法,因为6层以上超过2000G数据 事实上不太会发生
另外一个假设是数据采集速度为均速
1以最后截止时候最大序列编号为1为最高层
如果小于6,直接把多余的部分全部删除
   (序列号指是指同层下的分切)并记录每层最大序列号
2当显示跨度超过2个文件时候则采取寻找其上层对应的序列号的bin-search算法
    因为知道当前两文件最大及最小时间戳可以很快寻找层次+1下对应的文件
反之,则根据基数来得到时间粒度在下层两个文件跨度以内的情况下时候-1进行搜索

3如果下层的时间跨度小于2个相互邻近的文件,ok,如果大于两个文件则回到上层
   总之就是必须找到在界面上交互出来的时间跨度对应的层数而标准是必须在两个邻近的数据文件以内

以上算法描述比较乱,里面还有很多细节,但大概是这样吧

结果因为抽样图形一般仅仅对其相临近的层负责 或时间跨度仅仅两个数据文件那么多所以精度跨度不大,看着相对比较舒服另我已经把gnuplot去掉自己写了个新的控件专门显示曲线而且可以动态显示它们
但因为也设计到以上抽样问题,所以在这里详细介绍了一下

还有就是gaga让贴图的事情因为程序是公司程序的一部分所以还是先不贴了等实在不行再拿出来现丑
不好意思

另外我比较有兴趣听一下GAGA大侠的建议,比如说抽样还有滤波方面的建议
我本人是学INFO的很多电子学上的东西不是很清楚

[ 本帖最后由 wero 于 2005-12-6 14:09 编辑 ]
页: [1] 2
查看完整版本: 请教一个问题,急等