是否有用于数据可视化和分析的命令行工具?

时间:2011-03-10 13:57:16

标签: linux plot

我正在寻找一个命令行工具(用于linux)来生成数据文件中的图。我一开始尝试使用gnuplot但它的曲线拟合能力并不是那么好。

然后我尝试了R但是我找不到一种方法来写一个矢量(标志上的小箭头)或热平均值(LaTeX中的\ left \ langle \ right \ rangle)。

我有一些隐藏的插件可以找到任何我找不到完成任务的插件吗?

7 个答案:

答案 0 :(得分:5)

这是你制作一种方式的一种方式。输入文件应使用一列或多列数据进行格式化。如果有两列或更多列,则第一列用作X,Y图中的X.

#! /usr/bin/env python

import sys
import matplotlib.pyplot as pyplot

for filename in sys.argv[1:]:
   with open(filename,'rt') as sf:
      table = []
      for line in sf: table.append( [float(val) for val in line.split()] )
      table = [ row for row in table if len(row) ] ## remove empty rows
      if len(table[0]) == 1 : pyplot.plot( [y[0] for y in table ] )
      for x in xrange(1,len(table[0])): pyplot.plot( [ y[0] for y in table ], [ y[x] for y in table ] )
pyplot.show()

答案 1 :(得分:1)

有一组命令行工具(mgl2png,mgl2eps,mgl2svg,...)可以生成带有绘图的图片。但是他们使用自己的脚本语言MGL(相当简单快速)。它是GPL库MathGL的一部分。

答案 2 :(得分:1)

  

是否有命令行工具

我解释这意味着你想直接从linux(例如Bash)命令行创建绘图而不用其他语言创建脚本。

似乎答案是:不是真的,只有一个例外:xplot

与大多数x*实用程序一样,它具有非常“不现代”的UI。但它可以从简单的命令行生成图,例如xplot a.txt b.txt

答案 3 :(得分:1)

与xplot一样,你也有ctioga2http://ctioga2.sf.net。绘制文本数据文件就像

一样简单
ctioga2 data.dat

生成Plot-000.pdf PDF文件。但是,它不适合数据。

答案 4 :(得分:0)

你试过PGF/TikZ吗?它可能需要一段时间才能适应它,但它有一流的LaTeX集成(毕竟它是LaTeX的一个库),这个网站上有很多例子。

在弄清楚语法之后,您可以编写一个简单的脚本,以适当的格式转换您需要的所有数据。

查看GNUPLOT basics文章。它将向您展示如何使用PGF / TikZ调用Gnuplot,然后从外部文件加载结果。

答案 5 :(得分:0)

我非常惊讶你的评估,即gnuplot不擅长曲线拟合。根据我的经验,gnuplot对于这种工作并不相同。但我的经验肯定是有限的,所以你可能会知道更多。

无论如何,我发现了这个,虽然它可能有所帮助: http://www.cs.hmc.edu/~vrable/gnuplot/using-gnuplot.html 它有一个关于曲线拟合的部分。

答案 6 :(得分:0)

结帐SciPyOctave