ggplot2每组仅包含一个观察值-在一张图上绘制两条线[重复]
Posted
技术标签:
【中文标题】ggplot2每组仅包含一个观察值-在一张图上绘制两条线[重复]【英文标题】:ggplot2 each group consists of only one observation-plotting two lines on one graph [duplicate] 【发布时间】:2021-11-20 03:40:36 【问题描述】:这里是初学者 R 用户。我正在尝试使用以下数据框绘制两条简单的线:
date_of_case <- c("7/12/2020", "7/13/2020", "7/14/2020", "7/15/2020", "7/16/2020", "7/17/2020", "7/18/2020", "7/19/2020", "7/20/2020", "7/21/2020", "7/22/2020", "7/23/2020", "7/24/2020", "7/25/2020", "7/26/2020", "7/27/2020", "7/28/2020", "7/29/2020", "7/30/2020", "7/31/2020", "8/01/2020", "8/02/2020", "8/03/2020")
Masked <- c(25, 23, 20, 20.5, 20, 20, 20.5, 20, 20.5, 21.25, 20, 20, 20.5, 19, 20.5, 18, 16, 16, 16, 16, 16, 16, 16)
NoMask <- c(9.5, 9, 9, 10, 10, 10, 9.5, 9.5, 9, 9, 9, 9, 9.5, 10, 10, 10, 9.5, 9.5, 10, 9, 9, 9, 9)
df <- data.frame(date_of_case, Masked, NoMask)
然后我想在我的日期向量(x 美学)上同时绘制 Masked 和 Unmasked 向量(y 美学)。我这样做如下:
ggplot(df, aes(x=date_of_case)) +
geom_line(aes(y=Masked, colour="Masked")) +
geom_line(aes(y=NoMask, colour="NoMask"))
不幸的是,我不断收到此错误消息:“geom_path:每个组仅包含一个观察值。您需要调整组审美吗?”
当我用 geom_point 替换 geom_line 时,效果很好(见下文)。enter image description here
如果这对大多数人来说似乎微不足道,请提前致谢并道歉。
【问题讨论】:
【参考方案1】:您需要在aes
中添加group = 1
:
ggplot(df, aes(x=date_of_case, group = 1)) +
geom_line(aes(y=Masked, colour="Masked")) +
geom_line(aes(y=NoMask, colour="NoMask"))
【讨论】:
以上是关于ggplot2每组仅包含一个观察值-在一张图上绘制两条线[重复]的主要内容,如果未能解决你的问题,请参考以下文章