R ggplot boxplot 通过组合因素绘制组图
R ggplot boxplot group plots by combining factors
我有一些每年 6 月和 12 月进行的水质(金属)结果。我当前的 df 有月、年、检测。我想按每个测试分组,即 2019 年 6 月、2019 年 12 月和 2020 年 6 月。我可以创建一个新的因子,比如测试,值为 0619、1219、0620。我还可以从(年月)为每个测试创建一个新因子价值。
在此之前,我想知道 geom_boxplot
是否可以结合月份、年份的因素来完成绘制 3 个独特的测试。按年或月分组不会给我 3 个独特的测试。
我正在寻找新因子路由之前的调用语法解决方案。
ggplot(data = Agm, aes(x = Month+Year, y = Level) , na.rm=TRUE) +
ggtitle("Lead Levels",subtitle=subtext )+
xlab("Test") + ylab("ppb") +
geom_boxplot( fill="red",width = 0.8) + theme_bw()
如果我没理解错的话,您想使用两列因子(月和年)显示箱线图。
您可以通过多种方式完成此操作。首先,您可以简单地将您的列粘贴到 ggplot
调用中,例如:
ggplot(data = Agm, aes(x = paste(Year, Month), y = Level)) +
geom_boxplot() + theme_bw()
在这种情况下,我通常会创建一个新列并将其用作 X 轴的变量。这将使您更灵活地管理值及其显示方式。例如:
library(tidyverse)
# Create a new Date column, combining year and month, separated by a -
Agm <- Agm %>% mutate(Date = paste(Year, Month, sep = "-") %>% arrange(Date)
ggplot(data = Agm, aes(x = Date, y = Level)) +
geom_boxplot() + theme_bw()
请注意,当使用上述任何一种方法时,我建议您首先根据年份加入,然后像我所做的那样加入月份,这样它就不会在您的绘图上错误地排序数据。如果您先选择月份,那么所有年份的一月将显示最多 first/left,然后是二月或十月,具体取决于您是否有前导零。
我有一些每年 6 月和 12 月进行的水质(金属)结果。我当前的 df 有月、年、检测。我想按每个测试分组,即 2019 年 6 月、2019 年 12 月和 2020 年 6 月。我可以创建一个新的因子,比如测试,值为 0619、1219、0620。我还可以从(年月)为每个测试创建一个新因子价值。
在此之前,我想知道 geom_boxplot
是否可以结合月份、年份的因素来完成绘制 3 个独特的测试。按年或月分组不会给我 3 个独特的测试。
我正在寻找新因子路由之前的调用语法解决方案。
ggplot(data = Agm, aes(x = Month+Year, y = Level) , na.rm=TRUE) +
ggtitle("Lead Levels",subtitle=subtext )+
xlab("Test") + ylab("ppb") +
geom_boxplot( fill="red",width = 0.8) + theme_bw()
如果我没理解错的话,您想使用两列因子(月和年)显示箱线图。
您可以通过多种方式完成此操作。首先,您可以简单地将您的列粘贴到 ggplot
调用中,例如:
ggplot(data = Agm, aes(x = paste(Year, Month), y = Level)) +
geom_boxplot() + theme_bw()
在这种情况下,我通常会创建一个新列并将其用作 X 轴的变量。这将使您更灵活地管理值及其显示方式。例如:
library(tidyverse)
# Create a new Date column, combining year and month, separated by a -
Agm <- Agm %>% mutate(Date = paste(Year, Month, sep = "-") %>% arrange(Date)
ggplot(data = Agm, aes(x = Date, y = Level)) +
geom_boxplot() + theme_bw()
请注意,当使用上述任何一种方法时,我建议您首先根据年份加入,然后像我所做的那样加入月份,这样它就不会在您的绘图上错误地排序数据。如果您先选择月份,那么所有年份的一月将显示最多 first/left,然后是二月或十月,具体取决于您是否有前导零。