微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

geom_segment箭头偏心

如何解决geom_segment箭头偏心

我正在使用geom_segment箭头,但是我在寻找一些问题以寻求纠正建议时遇到问题。首先,箭头偏离其线的中心。第二,如果将lineend设置为“ butt”或“ square”,则该段的“主”线穿过箭头。如果type =“ closed”,这些都对我有用,但不那么明显。

df2 <- expand.grid(
  lineend = c('round','butt','square'),linejoin = c('round','mitre','bevel'),stringsAsFactors = FALSE
)
df2 <- data.frame(df2,y = 1:9)

ggplot(df2,aes(x = 1,y = y,xend = 2,yend = y,label = paste(lineend,linejoin))) +
  geom_segment(
    lineend = df2$lineend,linejoin = df2$linejoin,size = 1.5,arrow = arrow(length = unit(0.3,"cm"))
  ) +
  geom_text(hjust = 'outside',nudge_x = -0.2) +
  xlim(0.5,2)

enter image description here

圆形斜角箭头也许是第一个问题中最明显的箭头,例如,您可以看到主线的拐角处通过顶部的第一个箭头戳戳。

然后,当输入=“ closed”时,就会出现旧的转角故障。

df2 <- expand.grid(
  lineend = c('round',"cm"),type = "closed")
  ) +
  geom_text(hjust = 'outside',2)

enter image description here

我看到了these two个帖子,这些帖子指向修改this代码,但使用了过时的指令(在我看来,源代码已更新)。如果lineend =“ butt”,则会出现此问题,并且可以通过更改为“ square”来部分解决,但是在某些尺寸组合下,看起来仍然很笨拙。

对这3种方法中的任何一种都将表示感谢,尤其是前两种(我找不到关于它的其他文章)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。