使用日期时间轴修复了 ggplot 图例位置?
Fixed ggplot legend position using datetime axis?
我想在 ggplot 中放置一个图例。然而,x 轴是日期时间,而 y 轴是数字。在 theme() 中,我既不能使用 c(0, 0) 将图例放置到绘图的原点,也不能使用组合 c(一些日期时间值,一些数值)。
有什么建议吗?
\时间像2018-12-0313:00:00是"POSIXct"
\ 列是 "chr"
\total_As_out 是 "num"
ggplot(data = col_outflow, mapping = aes(x = time, y = total_As_out, colour = column, shape = column)) +
geom_point(na.rm = TRUE) +
geom_line(data = col_outflow[!is.na(col_outflow$total_As_out),], na.rm = TRUE) +
scale_color_manual(values = cols) +
scale_shape_manual(values = c(5, 15, 5, 15, 5, 15)) +
ylab("As outflow [µg/l]") +
theme(
axis.title.x = element_blank(),
legend.justification = c(0,1),
legend.position = c(min(col_outflow$time), 15)
)
上面的代码给出了
(函数(el,elname)中的错误:
元素 legend.position 必须是字符串或数值向量。
我发现我确实可以给 legend.position 一个数值向量。这些值必须在 [0, 1] 中,而不是轴上显示的实际值。
我想在 ggplot 中放置一个图例。然而,x 轴是日期时间,而 y 轴是数字。在 theme() 中,我既不能使用 c(0, 0) 将图例放置到绘图的原点,也不能使用组合 c(一些日期时间值,一些数值)。 有什么建议吗?
\时间像2018-12-0313:00:00是"POSIXct" \ 列是 "chr" \total_As_out 是 "num"
ggplot(data = col_outflow, mapping = aes(x = time, y = total_As_out, colour = column, shape = column)) +
geom_point(na.rm = TRUE) +
geom_line(data = col_outflow[!is.na(col_outflow$total_As_out),], na.rm = TRUE) +
scale_color_manual(values = cols) +
scale_shape_manual(values = c(5, 15, 5, 15, 5, 15)) +
ylab("As outflow [µg/l]") +
theme(
axis.title.x = element_blank(),
legend.justification = c(0,1),
legend.position = c(min(col_outflow$time), 15)
)
上面的代码给出了 (函数(el,elname)中的错误: 元素 legend.position 必须是字符串或数值向量。
我发现我确实可以给 legend.position 一个数值向量。这些值必须在 [0, 1] 中,而不是轴上显示的实际值。