当前位置: 首页 » R(给爷作个图) » R_Draw » ggplot–条形图(geom_bar)

ggplot–条形图(geom_bar)

[文章目录] x

今天先整理一下我们常用的条形图吧

更多阅读:
http://www.bbioo.com/experiment/105-135189-1.html

Plotting means and error bars
http://www.cookbook-r.com/Graphs/Plotting_means_and_error_bars_(ggplot2)/

一、实例1.

geom_bar1

[/crayon]
ggplot不识别一个x点对应两个y点,所以需要将后面的两列放在一起,同时每一列加一个标签,这样才可以做出以a为x轴,b,c为y轴的条形图。

第一步:对数据变形

将准备作为x(或者Y)轴的数据的数据放到一起,同时同来自不同样的y轴做上标记

方法一:手动提取,然后用rbind合并

[/crayon]

方法二:用reshape2中的melt函数

[/crayon]
melt

[/crayon]
其中 id.vars 是被当做维度的列变量,每个变量在结果中占一列;measure.vars 是被当成观测值的列变量,它们的列变量名称和值分别组成 variable 和 value两列,列变量名称用variable.name 和 value.name来指

第二步:作图

[/crayon]
fill 堆叠元素,并标准化为1dodge避免重叠;identity不做任何调整;jitter给点添加扰动避免重合;stack将图形元素堆叠起来。

[/crayon]

二、实例二

1.标签的颜色与条形的颜色顺序一致性

可以加入Order命令

[/crayon]
geom_bar2

2.颜色的修改

[/crayon]
例如:
geom_bar3

[/crayon]
这里面包含了:

  1. 标签颜色的修改以及标签排序与作图排序的一致;
  2. 根据样品的个数,修改了Legend的长度,以及其他字体的颜色

按照数值大小作图,以及旋转x轴的标度
geom_bar4

[/crayon]

旋转x轴

用的是

theme(axis.text.x=element_text(angle=90,colour="black")

按数值来排画图的顺序,

reorder(sp,-num)

实例三

geom_bar5

1 文件arc_genus.txt

[/crayon]

2 命令行:

[/crayon]
注意x,y轴坐标的大小,怎么好看,怎么来

[/crayon]

3 命令详解:

去掉背景与图注的标题

[/crayon]
调整x轴坐标位置与大小

[/crayon]
注意hjust的值为0~1,用与调整横坐标与轴的距离

手动添加颜色

[/crayon]
或者scale_fill_manual(values=c(1,5))

调整y轴的大小

[/crayon]
修改坐标标题

[/crayon]
调整纵坐标的范围

[/crayon]
根据order来排序

[/crayon]
 

加error_bar

 

参考资料:

http://stackoverflow.com/questions/25070547/ggplot-side-by-side-geom-bar

 


下一篇 :

上一篇 :

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

$(document).ready(function(){ $("#article-index").css('display','none');});