繁体   English   中英

一组ggplot2缺少线型

[英]Linetypes missing for one group ggplot2

我有以下数据:

date, name, bin,group, value
2017-08-19,a1,0,1,302
2017-08-19,a3,0,1,35
2017-08-19,a4,0,1,33
2017-08-19,a6,0,1,43
2017-08-19,p1,0,0,76
2017-08-19,i3,0,0,23
2017-08-19,cl,1,1,73
2017-08-19,c,1,0,2
2017-09-19,a1,0,1,302
2017-09-19,a3,0,1,35
2017-09-19,a4,0,1,33
2017-09-19,a6,0,1,43
2017-09-19,p1,0,1,76
2017-09-19,i3,0,1,23
2017-09-19,cl,1,1,73
2017-09-19,c,1,1,2

由于某种原因,我最终得到的图不显示其中一个组的线型。

这是我的代码:

p <- df %>%
  ggplot(aes(y=value,x=date,color=name))+
  geom_point(aes(shape=factor(bin)))+
  geom_line(aes(linetype=factor(group)))+
  geom_hline(aes(yintercept = 0))+
  theme_minimal()
p

您可以从下面的图像中看到一种线型没有显示。

在此处输入图片说明

如何显示其他线型?

某些行未显示的原因是,对于某些name ,有两个group 结果, ggplot不会选择要显示线条的线,并且显然决定什么都不做。

一个可能的解决方案是将group value更改为每个name的第一个,然后绘制:

df %>% 
  group_by(name) %>% 
  mutate(group = first(group)) %>% 
  ggplot(aes(x = date, y = value, color = name)) +
  geom_point(aes(shape = factor(bin))) +
  geom_line(aes(linetype = factor(group))) +
  geom_hline(aes(yintercept = 0)) +
  theme_minimal()

给出以下图:

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM