我有一个问题发生在我的ggplot,我无法找到问题。我有一个数据框看起来有点如下,并希望绘制它的颜色编码制度:
df <- data.frame(
CO = c(0, 4, 5, 23, 25, 28, 31, 2),
time = structure(c(1670585739, 1670586039, 1670586339, 1670586639, 1670586939, 1670587239, 1670587539, 1670587839), class = c("POSIXct", "POSIXt"), tzone = "UTC"),
regime = structure(c(2L, 2L, 2L, 1L, 1L, 1L, 1L, 3L), levels = c("LA", "PAn", "So"), class = "factor")
)
df
#> CO time regime
#> 1 0 2022-12-09 11:35:39 PAn
#> 2 4 2022-12-09 11:40:39 PAn
#> 3 5 2022-12-09 11:45:39 PAn
#> 4 23 2022-12-09 11:50:39 LA
#> 5 25 2022-12-09 11:55:39 LA
#> 6 28 2022-12-09 12:00:39 LA
#> 7 31 2022-12-09 12:05:39 LA
#> 8 2 2022-12-09 12:10:39 So
数据如下所示:
> sapply(df,class)
$CO
[1] "integer"
$time
[1] "POSIXct" "POSIXt"
$regime
[1] "factor"
> summary(df)
CO time regime
Min. : 0.0 Min. :2022-12-09 11:35:39.00 LA : 431
1st Qu.:124.0 1st Qu.:2022-12-10 17:59:09.00 PAn:2384
Median :142.0 Median :2022-12-11 23:41:39.00 SoL: 37
Mean :134.5 Mean :2022-12-11 23:31:39.06
3rd Qu.:149.0 3rd Qu.:2022-12-13 05:24:09.00
Max. :176.0 3rd Qu.:2022-12-13 05:24:09.00
Max. :2022-12-14 11:04:09.00
然而,使用ggplot时,由于以下情况,未显示颜色:
ggplot(df, aes(x=time, y=CO, color = factor(regime))) +
geom_point() +
theme(legend.position = "bottom")
给了我
我在这里迷路了,因为“政权”的因子在底部以不同的颜色显示,但在图本身中没有颜色编码,尽管事实上类是正确的“因子”,也没有任何错误消息。
我已经尝试在人工数据集中重现这个问题,但无法重现,使用+ geom_point(color=factor(regime)
也没有解决这个问题。
1条答案
按热度按时间58wvjzkj1#
试试这个:
根据需要修改这些值
警告;对于你的第三个政权是So还是SoL要保持一致,就像你向我们展示的那样...