繁体   English   中英

使用ggplot2在点char中闪避点

[英]Dodge points in point char with ggplot2

给定data.table:

df = data.table(type=rep(letters[1:3], each=2), count=c(1, 1, 4, 4, 4, 4), year=rep(c('2013', '2014'), 3))

type  count  year
a     1      2013
a     1      2014
b     4      2013
b     4      2014
c     4      2013
c     4      2014

我试图绘制点图和折线图以显示对年的count

p = ggplot(data=df, aes(x=year, y=count, group=type, color=type)) + geom_line() + geom_point(position=position_dodge(height=1)) 

看起来像:
在此处输入图片说明

似乎垂直闪避不起作用。

如果生成图:

p = ggplot(data=df, aes(x=year, y=count, group=type, color=type)) + geom_line() + geom_point(position=position_dodge(width=1))

然后情节看起来像:

水平躲闪起作用的地方。

如何使垂直闪避(第一个图)起作用?

环形交叉口解决方案:您可以水平躲避并翻转轴

p = ggplot(data=df, aes(x=count, y=year, group=type, color=type)) + 
  geom_line(position=position_dodge(width=1)) + 
  geom_point(position=position_dodge(width=1)) +
  coord_flip()
p

在此处输入图片说明

我就这个问题咨询了哈德利,他回答说

闪避仅针对具有ymin和ymax的几何体定义

详细信息可以在第1119期中找到。

暂无
暂无

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

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