R ggplot2图例仅显示带有图例.key属性的部分边框
我正在尝试使用ggplot2创建一个图形,但我不明白为什么legend.key属性仅在图例的一部分周围放置边框。请参阅下面的最小工作示例。有关于修复的建议吗?这里提供的示例似乎运行良好()R ggplot2图例仅显示带有图例.key属性的部分边框,r,ggplot2,legend,R,Ggplot2,Legend,我正在尝试使用ggplot2创建一个图形,但我不明白为什么legend.key属性仅在图例的一部分周围放置边框。请参阅下面的最小工作示例。有关于修复的建议吗?这里提供的示例似乎运行良好() set.seed(12) xy我不知道为什么,但它似乎与在Rstudio中将图像渲染到屏幕有关(我假设您正在Rstudio中工作) 您所要做的就是使用ggsave(“plot.png”)并按预期绘制线条。此外,如果保存为pdf,图例将具有所需的行 而且,正如@jeremycg所说,如果你想让这些行显示在屏幕上
set.seed(12)
xy我不知道为什么,但它似乎与在Rstudio中将图像渲染到屏幕有关(我假设您正在Rstudio中工作)
您所要做的就是使用ggsave(“plot.png”)
并按预期绘制线条。此外,如果保存为pdf,图例将具有所需的行
而且,正如@jeremycg所说,如果你想让这些行显示在屏幕上,你应该使用legend.key=element\u rect(color=“black”,size=1))
(size=1在我的屏幕上就足够了)
最后:您不必每次都键入theme命令,您可以使用“,”来分隔它们,如:
theme(legend.key = element_rect(colour="black"),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank())
我没有测试它,但我认为这样会更快。无论出于什么原因,传奇有点偏离中心。这不是一个很好的解决方案,但您可以尝试将size=1.1
添加到图例中,使其成为元素(color=“black”,size=1.1))
您也可以将geom\u tile()
更改为geom\u tile(color=“black”)
,但这会产生您可能不想要的横杆。感谢您的建议,我已经尝试了大小设置,在紧要关头它会起作用,但我一直在寻找一个可能更好的解决方案。有趣的是,它如何通过geom_tile的颜色选项显示ok。仍然在决定我是否喜欢横杆。哇,我使用的是RStudio,正如您所说的那样,它可以正确地使用ggsave,所以感谢您提供了最好的解决方案!我最近刚刚看到了主题的组合,但还没有编辑我的代码。
theme(legend.key = element_rect(colour="black"),
axis.ticks.x = element_blank(),
axis.ticks.y = element_blank())