我正在尝试使用以下代码向barplot
添加简单的线条图:
mp <- barplot(monatsdurchschnitt_niederschlag, ylim = c(0, 90));
mp
# [,1]
# [1,] 0.7
# [2,] 1.9
# [3,] 3.1
# [4,] 4.3
# [5,] 5.5
# [6,] 6.7
# [7,] 7.9
# [8,] 9.1
# [9,] 10.3
#[10,] 11.5
#[11,] 12.7
#[12,] 13.9
axis(1, at=mp[,1], labels = xlabels_monate)
text(mp[,1], monatsdurchschnitt_niederschlag,
labels = monatsdurchschnitt_niederschlag_rounded,
pos = 3, cex = 1)
par(new=TRUE)
plot(mp[,1], monatsdurchschnitt, col = "red", axes=FALSE, type = "o",
ylim = c(0,40), xlim = c(0,14), ann = FALSE)
axis(4, at=seq(0,40,10), ylim = c(0,40), col = "red", col.axis = "red")
但不知何故,第二行图的点不在条形图的条形图中心,正如您可以清楚地看到的那样。我认为这可以通过使用mp[,1]
作为线图的x坐标来解决,但显然这没有用。有谁知道解决方案?
另一个问题是,右侧附加线图的轴线不会与左侧轴线的高度相同。有办法改变吗?
答案 0 :(得分:1)
par(new = TRUE)
是问题的根源。您是否可以使用lines
代替plot
来绘制红线?
如果没有,请确保两个xlim
之间的plot
相同。如何在xlim = extendrange(mp, f = 0.1)
中明确设置plot
?目前您没有在xlim
中指定barplot
,而是在第二个xlim = c(0, 14)
中设置plot
。 xlim
的差异会导致错位问题。