【问题标题】:Barplot: changing x axe and adding line条形图:更改 x 轴并添加线
【发布时间】:2011-06-14 12:54:48
【问题描述】:

我有一个动物园,每天的数据如下所示: > head(almorol)
1973-10-02 1973-10-03 1973-10-04 1973-10-05 1973-10-06 1973-10-07
183.9 208.2 153.7 84.8 52.5 35.5

我想绘制年度总数和移动平均线,所以我做了:

y<-apply.yearly(almorol, FUN=sum)
plot(y, main="Annual totals - Tagus (Almorol)",ylab="Q (m3/s)")
lines(rollapply(y, 10, mean, na.rm=TRUE), col="red", lwd=2)

这很好用,但由于数据不连续,折线图不正确。如果我用积分来做这件事很难理解,所以我想做一个条形图。但是,当我执行barplot(y) 时,x 轴以 yy-mm-dd 格式出现,而不仅仅是年份,而且我无法在移动平均线中添加一条线(它不会给出错误,只是不会出现) .

感谢您的帮助!

编辑:> y
1973-12-31 1974-12-31 1975-12-31 1976-12-31
19224.20 103766.30 72180.90 55939.80
1977-12-31 1978-12-31 1979-12-31 1980-12-31
215905.00 231014.21 319481.02 58979.84
1981-12-31 1982-12-31 1983-12-31 1984-12-31
32931.17 67989.06 83920.62 99431.75
1985-12-31 1986-12-31 1987-12-31 1988-12-31
161357.10 82910.87 101154.81 147541.80
1989-12-31 1990-12-31 1991-12-31 1992-12-31
137684.21 134974.39 89039.02 20774.72
1993-12-31 1994-12-31 1995-12-31 1996-12-31
58916.95 55187.38 52361.77 271064.34
1997-12-31 1998-12-31 1999-12-31 2000-12-31
220510.88 125116.62 42170.95 103915.99
2001-12-31 2002-12-31 2003-12-31 2004-12-31
244513.59 66811.15 167458.93 67223.66
2005-12-31 2006-12-31 2007-12-31 2008-12-31
8906.31 116874.33 79105.30 40142.61
2009-12-31 2010-12-31 2011-05-31
43835.34 161491.77 73093.06

【问题讨论】:

  • 请不要显示head(almorol),而是显示dput(almorol),以便我们一起玩吗?
  • dput (almorol) 给出了数百行,但类似于:structure(c(183.9, 208.2, 153.7, 84.8, 52.5,......), index = structure(c(1370, 1371, 1372, 1373, 1374, 1375....), class = "Date"), class = "zoo")
  • 请将其缩减为有意义的大小,以获取可重现的示例,请参阅 c.f. '如何提出一个好问题'。

标签: r plot zoo


【解决方案1】:

条形图中的 x 坐标与数据的原始比例无关。您可以查看 barplot 函数的返回值以了解 x 轴的范围是多少(看不到线的可能原因是它完全绘制在屏幕外)。

TeachingDemos 包中的 updateusr 函数可用于更改坐标比例以匹配您要添加的数据。

另一种选择是使用带有type='h' 的绘图功能(并查看?par 中的lwdlend 选项)使用感兴趣的坐标创建您自己的条形图,然后添加您的参考线.

【讨论】:

  • 好,如果您使用宽线 (lwd),请确保设置了借出选项。
猜你喜欢
  • 1970-01-01
  • 2011-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多