在科研论文中常常会遇到画柱状图,有的柱子高,有的柱子却很低,还有显示同一纵坐标相同刻度线位置的柱子,高度相近看起来没什么差别,如何使做出来的图更完美?让阅读的人能一目了然。
今天介绍两种方法:Origin和R语言。
首先,欣赏下面这张加break的图:
Origin操作
1.数据准备,以A图的格式准备数据
A(X)列为横轴数据,B(Y)为A(X)列的显示标签,se1~se4为标准误,用作误差线,这里以gene名称为横轴。数据也可在Excel里整理好复制粘贴到Origin里的表格里。
A图
2.绘制柱状图
(1)如 B图:有两种方式找到要绘制的图表类型,选择Column(柱状图),开始绘图。
(2)选择X轴,Y轴,误差线(yEr)对应的列(如 C图红色虚线框中所示),点Add按钮,接着点OK按钮,开始绘图(注意:这里B列中的数据不选)。
(3)绘出柱状图的横、纵坐标轴的数值范围需手动更改。点击坐标轴(任意一条)右键,选择Scale,在弹出的窗口改范围,以及刻度大小,朝向等等;同时在Tick Labels选项卡,Type下拉列表中选Text from dataset,dataset下拉列表中选表格的B列,即可更改X轴标签为表中B列中的文本(如 D图)。
(4)单击选中柱子,右键,选Plot Details,在Space选项卡更改柱子之间的空隙和柱子宽度(如 E图)。
(5)得到无“Break”的柱状图 F图,很明显,sweet11和sweet15的数据显示效果不好,柱子太矮了。
B图
C图
D图
E图
F图
3.加break
给Y轴加“break“,点击Y轴,右键选择Scale,弹出的窗口,在Break选项卡,在Show Break前打勾,更改合适的中断区域,以及中断处下方、上方的刻度大小(如G图,红色线框所示)。
G图
4.调整与导出
如果Break范围OK的画,就可选择合适的格式,大小导出图片了,导出方法如 H图,建议保存工程文件,以后改下数据就直接出图了。最终结果 I 图,sweet11和sweet15的柱子”长高”了。
H图
I 图
R语言作柱状图
R当中的坐标中断一般都使用plotrix库中的axis.break(),gap.plot(),gap.barplot(),gap.boxplot()等几个函数来实现,见下图:
从图像效果上来看,这样的坐标中断只能说实现了坐标中断,但效果上是非常一般的。甚至远不如excel,openoffice当中出图效果好。为此,我们需要对plotrix库中的gap.plot做出修改,以达到满意的效果。
最简单的修改办法就是在使用了gap.plot,gap.barplot,gap.boxplot之后重新使用axis.break来修改中断类型,使得看上去美一点。
使用上面的办法可以绘制出双反斜线中断,并可以视实际情况加断点起止位置。
以上的R语言和Origin画中断的方法都学到手了吗?赶快试试吧!