3.6 Org-Plot :org表格绘图

通过使用'Gnuplot'http://www.gnuplot.info 和'gnplot-mode'http://cars9.uchicago.edu/~ravel/software/gnuplot-mode.html ,Org-Plot可用根据表格中的数据生成2D和3D图表. 这里有一个例子: 首先确保你安装了Gnuplot和Gnuplot mode,然后对下面的表格调用'org-plot/gnuplot'

#+PLOT: title:"Citas" ind:1 deps:(3) type:2d with:histograms set:"yrange [0:]"
| Sede      | Max cites | H-index |
|-----------+-----------+---------|
| Chile     |    257.72 |   21.39 |
| Leeds     |    165.77 |   19.68 |
| Sao Paolo |     71.00 |   11.50 |
| Stockholm |    134.19 |   14.33 |
| Morelia   |    257.56 |   17.67 |

注意,Org Plot会自动把表格的标题作为生成图表的标签. 通过表格前的#+PLOT:行,你还可以定义plot的标签,类型,内容和展示. 下面列出了完整的Org-plot选项. 更多的信息和例子请参见Org-plot教程http://orgmode.org/worg/org-tutorials/org-plot.html

Plot Options

set

当绘图时,用于设置任何的gnuplot选项

title

指定plot的标题

ind

指定表格的哪一列作为x轴

deps

指定描绘哪些列,该设置的格式类似于Lisp中的list,由小括号括起来,内部用空格分隔,例如'dep:(3 4)'指定只描绘第3,4列(默认情况下,除了指明为ind的列,其他的列都会被描绘)

type

指定plot是2d还是3d还是grid的

with

对每一个要被绘制的列都插入一个指定的with选项(例如,lines,points,boxes,impulses,等等). 默认值为lines

file

如果你想将描绘输出成一个文件,指定输出文件的路径

labels

用一个列表指定各输出列的标签(默认情况下,如果列的标题村爱的话,使用列标题作为标签)

line

在gnuplot脚本中插入指定的一整行(Specify an entire line to be inserted in the Gnuplot script. )

map

当描绘类型为3d或grid时,该选项的值设为t则在描绘时描绘的是一个平面映射而不是3维图形(set this to t to graph a flat mapping rather than a 3d slope)

timefmt

指定Org-mode的时间戳格式,因为它们会被Gnuplot所解析,默认格式为'%Y-%m-%d-%H:%M:%S'

script

如果你想实现完全的自定义,你可以指定一个脚本文件(把文件名放在双引号内)来实现描绘动作. 在正真描绘之前,这个特定脚本中的每个'$datafile'会被替换成生成的数据文件的实际路径. 注意:即使你设置了这个选项,你也可能仍然需要定义plot的type,因为这个选项会影响到生成的数据文件的内容.