相关疑难解决方法(0)

绘制2 y轴,左侧为y轴,右侧为y轴

我需要绘制一个显示计数的条形图和一个在一个图表中显示速率的折线图,我可以分别做两个,但是当我把它们放在一起时,我的第一层的比例(即geom_bar)与第二层重叠层(即geom_line).

我可以将轴geom_line向右移动吗?

r ggplot2 r-faq

209
推荐指数
12
解决办法
25万
查看次数

为条形图和线条创建通用图例

我对R非常陌生,因此如果这是一个非常基本的问题,我会提前道歉。

我正在尝试绘制一个显示出水和悬浮泥沙量(SSL)的图表。但是,我想弄清楚条形图表示放电,而线图表示SSL。我有两个想法:

  1. 为放电标签和SSL分别上色以分别对​​应于条形图和折线图,因此读者可以直观地知道哪个标签属于哪个标签。但是ggplot2不允许我这样做,因为它将以相同的颜色为两个y轴着色。

  2. 建立一个图例,清楚地表明红线属于SSL,蓝框图属于排放。有一个帖子在这里它做类似的事情,但我似乎无法实现它。如果有人可以帮助我,我将不胜感激。

这就是我现在的图。

在此处输入图片说明

这是我的脚本:

library(ggplot2)
library(gridExtra)
library(RColorBrewer)
library(tibble)

P_Discharge <- Pyay$Mean.monthly.discharge
P_MaxTemp <- Pyay$Mean.monthly.max.temperature
P_MinTemp <- Pyay$Mean.monthly.minimum.temperature
P_Rain <- Pyay$Max.monthly.rainfall
P_SSL <- Pyay$Mean.suspended.sediment.load

#reorderingthemonths
Pyay$Month <- factor(Pyay$Month, 
                     levels=c("Jan", "Feb", "Mar", "Apr", "May", "Jun", 
                              "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"))
#PlottingdischargeandSSL
Pgraph1 <- ggplot(Pyay, aes(x=Month, group=2))
Pgraph1 <- Pgraph1 + geom_bar(aes(y=P_Discharge), stat="identity", fill="blue")
Pgraph1 <- Pgraph1 + geom_line(aes(y=P_SSL), colour="red", size=1) +
  labs(y=expression(Q/(m^{3}))) +
  labs(x="")

#addingsecondaxis
Pgraph1 <- Pgraph1 + scale_y_continuous(sec.axis=sec_axis(~., name=expression(
  Suspended~sediment~load~(10^{6}~t))))

#colouringaxistitles
Pgraph1 <- Pgraph1 + …
Run Code Online (Sandbox Code Playgroud)

r linegraph ggplot2 boxplot

5
推荐指数
1
解决办法
205
查看次数

标签 统计

ggplot2 ×2

r ×2

boxplot ×1

linegraph ×1

r-faq ×1