我在沿 x 轴组织关卡时遇到问题。由于某种原因,我的几周完全乱了套,尽管我相信水平是正确的。我想要沿着我的 X 轴有第 1 周到第 52 周,但经过几个小时的尝试后我无法弄清楚。有人可以解释一下吗?
winter_fl <- structure(list(IDWeek = c(1, 2, 2, 3, 3, 4, 5, 5, 6, 7, 8, 9,
10, 11, 12, 13, 13, 14, 14, 16, 16, 17, 17, 18, 18, 28, 28, 29,
30, 30, 31, 31, 32, 33, 34, 35, 35, 36, 36, 37, 37, 38, 39, 40,
41, 42, 43, 43, 44, 45, 45, 46, 47, 48, 49, 50, 51, 52), race = c("W",
"W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W",
"W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W",
"W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W",
"W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W", "W",
"W", "W", "W", "W", "W"), z = c("Weekly Median FL", "Estimated Fish Passage",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL", "Weekly Median FL",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL", "Estimated Fish Passage",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Estimated Fish Passage", "Weekly Median FL", "Estimated Fish Passage",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Estimated Fish Passage", "Weekly Median FL", "Weekly Median FL",
"Estimated Fish Passage", "Weekly Median FL", "Estimated Fish Passage",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL", "Weekly Median FL",
"Estimated Fish Passage", "Weekly Median FL", "Estimated Fish Passage",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL", "Weekly Median FL",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Weekly Median FL", "Estimated Fish Passage", "Weekly Median FL",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL", "Weekly Median FL",
"Weekly Median FL", "Weekly Median FL", "Weekly Median FL"),
ForkLength_Catch = c(156, 1704, 825, 998, 589, 424, 332,
910, 273, 589, 998, 863, 1645, 2769, 739, 112, 1927, 322,
3088, 138, 116, 238, 741, 129, 327, 267, 211, 535, 157, 723,
154, 2868, 4944, 1025, 4932, 4005, 7979, 8016, 10644, 30035,
12230, 11128, 17513, 22107, 32614, 30997, 82256, 27013, 9993,
17056, 30856, 32796, 21939, 25576, 5178, 3686, 1983, 1271
)), class = "data.frame", row.names = c(NA, -58L))
a <- ggplot(data = filter(winter_fl, z == 'Estimated Fish Passage'),aes(x= factor(IDWeek, levels = c(1:52)), y = ForkLength_Catch), fill= z) +
geom_bar(stat='summary', fun= sum, show.legend=FALSE, fill= 'lightpink2',color='black') + ylab("Median ForkLength (mm) and Estimated Fish Passage") + xlab("Week") +
scale_y_continuous(labels=comma) + scale_x_discrete(breaks=seq(1,52,1)) +
geom_boxplot(data = filter(winter_fl, z == 'Weekly Median FL'), aes(x= factor(IDWeek, levels = c(1:52)), y = ForkLength_Catch), width=0.5, fill = 'goldenrod', outlier.colour = 'pink') +
facet_wrap(race ~ z, ncol = 1, strip.position ="top", scales="free_y") + theme_bw(base_size = 9) + theme(strip.text=element_text(size=7,margin=margin()), strip.background=element_rect(colour="azure",fill="#f0f0f0")) #+ scale_x_discrete(breaks=seq(1,52,1))
使用
scale_x_discrete(drop = FALSE)
防止未使用的 factor
级别被丢弃:
library(ggplot2)
library(scales)
winter_fl$IDWeek <- factor(winter_fl$IDWeek)
ggplot(
data = subset(winter_fl, z == "Estimated Fish Passage"),
aes(x = IDWeek, y = ForkLength_Catch, fill = z)
) +
geom_bar(
stat = "summary", fun = sum, show.legend = FALSE,
fill = "lightpink2", color = "black"
) +
ylab("Median ForkLength (mm) and Estimated Fish Passage") +
xlab("Week") +
scale_y_continuous(labels = comma) +
scale_x_discrete(drop = FALSE) +
geom_boxplot(
data = subset(winter_fl, z == "Weekly Median FL"),
aes(x = IDWeek, y = ForkLength_Catch),
width = 0.5, fill = "goldenrod", outlier.colour = "pink"
) +
facet_wrap(race ~ z,
ncol = 1,
strip.position = "top", scales = "free_y"
) +
theme_bw(base_size = 9) +
theme(
strip.text = element_text(size = 7, margin = margin()),
strip.background = element_rect(colour = "azure", fill = "#f0f0f0")
)