您好我正在尝试使用以下代码创建一个boxplot。然而,它没有采取标签。非常感谢任何想法和帮助;
/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home/bin/java
\d[.]\d
-->
\d[.]\d-->
Process finished with exit code 0
答案 0 :(得分:0)
如果我正确理解OP的意图
weekday
(以数字或整数给出)
在他的数据中)在x轴和为实现这一目标,我建议将工作日转换为适当标注因子水平的因素:
fcast_data1$weekday <- factor(fcast_data1$weekday,
levels = 1:7,
labels = c(
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday"))
请注意,这里有两个假设:
weekday
1
表示星期日和在其他情况下,需要调整级别和/或标签,例如levels = 0:6
如果星期日由0
编码。
现在,绘制修改后的数据
library(ggplot2)
ggplot(fcast_data1, aes(x = weekday, y = mape_MultExpSmoothFcst)) +
geom_boxplot(outlier.shape = NA) + #avoid plotting outliers twice
geom_jitter(position = position_jitter(width = .1, height = 0)) +
# mytheme +
ggtitle("May Forecast in May")
ggplot2
已经认识到x轴是一个因子并且使用离散比例而不是连续比例。因子标签用于注释休息。此外,还为每个因子级别创建了一个单独的箱图。
请注意,y审美现在指的是样本数据中给出的mape_MultExpSmoothFcst
。
OP在评论中提供了样本数据。这些已在这里使用。
fcast_data1 <- structure(list(date = c("5/1/2017", "5/1/2017", "5/1/2017", "5/1/2017",
"5/1/2017", "5/1/2017"), mape_MultExpSmoothFcst = c(39.89361702,
59.00277008, 42.31678487, 32.20720721, 36.9047619, 26.4033264
), pe_MultExpSmoothFcst = c(39.89361702, 59.00277008, 42.31678487,
32.20720721, 36.9047619, 26.4033264), weekday = c(2L, 2L, 1L,
1L, 3L, 3L)), .Names = c("date", "mape_MultExpSmoothFcst", "pe_MultExpSmoothFcst",
"weekday"), row.names = c(NA, -6L), class = "data.frame")