相关疑难解决方法(0)

脚本中的ggplot图不会显示在Rstudio中

我对Rstudio有一个奇怪的问题:如果脚本调用ggplot2函数来显示一个图,那么使用Source来运行脚本不会产生图.如果我选择与整个脚本Ctrl+A,然后运行当前行或选择(Ctrl+Enter),然后剧情确实显示.同样,在控制台中键入绘图命令会产生正确的输出.

例如:

library(ggplot2)

p = ggplot(mtcars, aes(wt, mpg))
p + geom_point()
Run Code Online (Sandbox Code Playgroud)

只有在粘贴到控制台时才会产生输出,而不是如果来源.

还有其他问题,但两者都没有帮助:

如何在获取脚本时让Rstudio显示绘图?我使用的是Rstudio 0.98.1062和R 3.1.1.

r ggplot2 rstudio

66
推荐指数
4
解决办法
6万
查看次数

在R中使用geom_rect进行时间序列着色

我试图遮蔽时间序列图的某个部分(有点像衰退阴影 - 类似于本文底部关于excel中衰退阴影的图表).我把一点点,可能是笨拙的样本放在一起来说明.我首先创建一个时间序列,用ggplot2绘制它,然后想使用geom_rect来提供着色.但我必须在争论中弄错.

a<-rnorm(300)
a_ts<-ts(a, start=c(1910, 1), frequency=12)
a_time<-time(a_ts)
a_series<-ts.union(big=a_ts, month=a_time)
a_series_df<-as.data.frame(a_series)
ggplot(a_series)+
  geom_line(mapping=aes_string(x="month", y="big"))+
  geom_rect(
    fill="red",alpha=0.5, 
    mapping=aes_string(x="month", y="big"), 
    xmin=as.numeric(as.Date(c("1924-01-01"))),
    xmax=as.numeric(as.Date(c("1928-12-31"))),
    ymin=0,
    ymax=2
    )
Run Code Online (Sandbox Code Playgroud)

请注意,我也尝试过也没用.

geom_rect(
        fill="red",alpha=0.5, 
        mapping=aes_string(x="month", y="big"), 
        aes(
           xmin=as.numeric(as.Date(c("1924-01-01"))),
           xmax=as.numeric(as.Date(c("1928-12-31"))),
           ymin=0,
           ymax=2)
        )
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r date time-series ggplot2

18
推荐指数
3
解决办法
2万
查看次数

标签 统计

ggplot2 ×2

r ×2

date ×1

rstudio ×1

time-series ×1