定制条形图中的R
问题描述:
,我有以下数据,以产生GGPLOT2条形图(R)定制条形图中的R
Bin Plr groupname data ci
3 1% solution 1002.97 6.98322
10 1% solution 1001.7 1.25921
30 1% solution 1176.47 12.1888
3 1% w/o solution 1206.76 6.97126
10 1% w/o solution 1211.65 1.81174
30 1% w/o solution 1395.84 15.8956
3 4% solution 1003.25 6.98989
10 4% solution 1002.14 0.870957
30 4% solution 1217.76 45.8752
3 4% w/o solution 1207.18 6.99091
10 4% w/o solution 1210.35 1.97528
30 4% w/o solution 1470.81 48.6673
于是,我找了分组的两个层次。任何人都可以建议我如何有以下柱形图由ggplot在R. http://oi42.tinypic.com/2s8rb7m.jpg
答
试试这个:
ggplot(my_data, aes(x=bin, y=data, fill=groupname))
+ geom_bar(stat="identity", position="dodge")
+facet_wrap(~ plr)
+labs(title = "Gains from using the solution", x= "size", y= "time[ms]")
EDIT2:SRY,投x作为因子,因此其不会对线性需要去规模。也使用宽度将其缩小一点以匹配ur样本图。我的新想法:
(ggplot(my_data, aes(x=factor(Bin), y=data, fill=groupname, width=.65))
+ geom_bar(stat="identity", position="dodge")
+facet_wrap(~Plr)
+labs(title = "Gains from using the solution", x= "size", y= "time[ms]")
+ geom_errorbar(aes(ymin=data-ci, ymax=data+ci),position="dodge")
)
答
使用从绿色恶魔的帮助下,我找到了正确的方法,使我需要
ggplot(my_data, aes(x=factor(Bin), y=data, fill=groupname, width=.65)) +
geom_bar(stat="identity", position="dodge")+facet_wrap(~Plr) +
labs(title = "Gains from using the solution", x= "size", y= "time[ms]",
linetype='custom title',fill="") +
geom_errorbar(aes(ymin=data-ci, ymax=data+ci),
width=0.25,position=position_dodge(0.65))
我已经试过分组的一个级别的图表(仅使用组名),这很容易。像qplot(factor(Bin),data = my_data,geom =“bar”,fill = groupname,weight = data,position =“dodge”,main =“使用解决方案获得的收益”,xlab =“Size”,ylab =“Time [ms]”)+ geom_errorbar(aes(ymin = data-ci,ymax = data + ci),width = .2,position = position_dodge(.9)) – Timir 2013-04-30 15:56:15
如果您在url中看到图片,将找到使用Plr进一步分组,但具有相同的分组组合 – Timir 2013-04-30 15:59:15
我通常对简单的x和y图使用qplot,对于更复杂的分组使用ggplot语法。我不知道它是否是最佳做法,但... – 2013-04-30 16:00:03