相关疑难解决方法(0)

在条形图中重新调整y轴会导致条形消失:R ggplot2

我正在尝试使用ggplot2创建一个条形图,y轴的起始值大于零.

假设我有关于三个不同农场胡萝卜长度的假设数据集的均值和标准误差:

carrots<-NULL
carrots$Mean<-c(270,250,240)
carrots$SE<-c(3,4,5)
carrots$Farm<-c("Plains","Hill","Valley")
carrots<-data.frame(carrots)
Run Code Online (Sandbox Code Playgroud)

我创建了一个基本情节:

p<-ggplot(carrots,aes(y=Mean,x=Farm)) +
   geom_bar(fill="slateblue") +
   geom_errorbar(aes(ymin=Mean-SE,ymax=Mean+SE), width=0)
p
Run Code Online (Sandbox Code Playgroud)

这很好,但是当比例从0开始到很难看到长度的差异.因此,我想将y轴重新缩放为c(200,300).但是,当我尝试这样做:

p+scale_y_continuous('Length (mm)', limit=c(200,300))
Run Code Online (Sandbox Code Playgroud)

虽然错误条仍然存在,但条形图会消失.

我的问题是:是否可以使用ggplot2绘制带有此调整轴的条形图?

感谢您提供的任何帮助或建议.

r ggplot2

44
推荐指数
1
解决办法
3万
查看次数

ggplot2:将geom_bar基线设置为1而不是零

我正在尝试制作比率条形图(使用geom_bar),并希望将x轴设置为y = 1.因此,比率<1将低于轴线,比率> 1将高于轴线.我可以用geom_point做类似的事情:

ggplot(data, aes(x=ratio, y=reorder(place,ratio)))+geom_point()+geom_vline(xintercept=1.0)+coord_flip()
Run Code Online (Sandbox Code Playgroud)

然而,geom_bar会更受欢迎...理想情况下,图形看起来像这样:http://i.stack.imgur.com/isdnw.png,除了"负"条形将比率<1.

非常感谢你的帮助!

C

r bar-chart ggplot2 geom-bar

8
推荐指数
3
解决办法
3744
查看次数

R ggplot2 geom_bar轴限制

昨天我问了一个关于使用ggplot2绘制每小时数据的问题(R ggplot2绘制每小时数据),并通过收到的答案找到了解决方案.然后我成功用geom_line()绘制温度数据.

我试图将它应用于geom_bar以用条形图来说明降水数据.但我无法设置y轴限制.我尝试了不同的东西,但找不到确切的观点.

我的数据如下:

FECHA H_SOLAR;DIR_M;VEL_M;TEMP_M;HR;PRECIP
01/06/14 00:50:00;314.3;1.9;14.1;68.0;-99.9
01/06/14 01:50:00;322.0;1.6;13.3;68.9;-99.9
01/06/14 02:50:00;303.5;2.1;12.3;70.9;-99.9
01/06/14 03:50:00;302.4;1.6;11.6;73.1;-99.9
01/06/14 04:50:00;306.5;1.2;10.9;76.4;-99.9
01/06/14 05:50:00;317.1;0.8;12.6;71.5;-99.9
01/06/14 06:50:00;341.8;0.0;17.1;58.8;-99.9
01/06/14 07:50:00;264.6;1.2;21.8;44.9;-99.9
01/06/14 08:50:00;253.8;2.9;24.7;32.2;-99.9
01/06/14 09:50:00;254.6;3.7;26.7;27.7;10
01/06/14 10:50:00;250.7;4.3;28.3;24.9;12
01/06/14 11:50:00;248.5;5.3;29.1;22.6;-99.9
01/06/14 12:50:00;242.8;4.7;30.3;20.4;-99.9
01/06/14 13:50:00;260.7;4.9;31.3;17.4;-99.9
01/06/14 14:50:00;251.8;5.1;31.9;17.1;-99.9
01/06/14 15:50:00;258.1;4.6;32.4;15.3;-99.9
01/06/14 16:50:00;254.3;5.7;32.4;14.0;-99.9
01/06/14 17:50:00;252.5;4.6;32.0;14.1;-99.9
01/06/14 18:50:00;257.4;3.8;31.1;14.9;20
01/06/14 19:50:00;135.8;4.2;26.0;41.2;-99.9
01/06/14 20:50:00;126.0;1.7;23.5;48.7;16
01/06/14 21:50:00;302.8;0.7;21.6;53.9;-99.9
01/06/14 22:50:00;294.2;1.1;19.3;67.4;-99.9
01/06/14 23:50:00;308.5;1.0;17.5;72.4;-99.9
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试的代码

library(ggplot2)

datos=read.csv("meteo.dat",sep=";",header=T,na.strings="-99.9")

datos$dia=as.POSIXct(datos[,1], format="%y/%m/%d %H:%M:%S")

datos$PRECIP[is.na(datos$PRECIP)]=0   # to avoid NA values

ggplot(data=datos,aes(x=dia, y=PRECIP)) + geom_bar(colour="blue",stat="identity") +
ylab("Precipitación (l)") + xlab("Hora solar") + 
opts(title="Precipitacion …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

6
推荐指数
1
解决办法
3万
查看次数

ggplot2:具有自定义y限制的geom_bar

我想绘制一个ggplot2带有自定义y限制的条形图。

Type <- LETTERS[1:5]
Y    <- c(99, 99.5, 99.0, 98.8, 98.5)

df <- data.frame(Type, Y)
Run Code Online (Sandbox Code Playgroud)

下面的代码适用于条形图:

library(ggplot2)
ggplot(data = df, mapping = aes(x = Type, y = Y, fill = Type)) +
  geom_bar(stat = "identity") +
  theme_bw()
Run Code Online (Sandbox Code Playgroud)

但是,我无法设置y限制。请参见下面的代码。

ggplot(data = df, mapping = aes(x = Type, y = Y, fill = Type)) +
  geom_bar(stat = "identity") +
  scale_y_continuous(limits = c(90, 100)) + 
  theme_bw()

ggplot(data = df, mapping = aes(x = Type, y = Y, fill = Type)) + …
Run Code Online (Sandbox Code Playgroud)

plot r bar-chart ggplot2 geom-bar

2
推荐指数
2
解决办法
2405
查看次数

标签 统计

ggplot2 ×4

r ×4

bar-chart ×2

geom-bar ×2

plot ×1