具有多重x轴和多个y轴的图形

时间:2017-04-14 22:00:19

标签: r

我知道如何制作一个有两个y轴和普通x的图,但我想知道如何绘制两个x轴和两个y轴的图。

linkstatic = 1

2 个答案:

答案 0 :(得分:0)

您可以将数据框从wide转换为long,然后使用facet_grid

library(ggplot2)
library(tidyr)
library(dplyr)
x <- data.frame(x1, x2)
y <- data.frame(y1, y2)

y <- y %>%
  gather(key = y_axis, value = y_value, y1, y2)
x <- x %>%
  gather(key = x_axis, value = x_value, x1, x2)
A <- cbind(x, y)
ggplot(A, aes(x_value, y_value)) +
  facet_grid(y_value ~ x_value) +
  geom_point()    #can replace with geom_line() if you prefer a line to points 

答案 1 :(得分:0)

在右侧为绘图添加更多空间,以便第二个y轴的标签适合。然后正常绘制第一个点。然后在没有轴的情况下绘制第二个系列。然后添加其他轴和轴标签。

par(mar = c(5.4,4.1,4.1,5.4))
plot(x1,y1,xlab="red",ylab="red",col="red")
par(new = T)
plot(x2,y2,xaxt="n",xlab="",yaxt="n",ylab="")
Axis(side = 3, at = x2, labels = x2)
mtext(side = 3, line = 3, 'black')
Axis(side = 4, at = y2, labels = y2)
mtext(side = 4, line = 3, 'black')

请务必以某种方式指出哪些点是带有颜色或文字的东西。

有关示例,请参阅this。我将y2更改为减少,以便实际上两个点系列都可见:

y2<-seq(50,40,-1)
相关问题