对于有许多点的散点图,一种常见的技术是减小点的大小并使它们透明。
library(ggplot2)
ggplot(diamonds, aes(x, y, colour = cut)) +
geom_point(alpha = 0.25, size = 0.5) +
ylim(0, 12)
不幸的是,传说中的点现在太小而且看不清楚。
我想要一种方法来改变图例中的点,而不依赖于主绘图面板中的图。它应该是以下内容之一:
thm <- theme_get()
thm[grepl("legend", names(thm))]
我很难找到合适的设置。如何更改磅值?
答案 0 :(得分:1)
如果您只需要在图例中更改格式,则应在override.aes=
中使用size=
和guide_legend
(参见下文)。这将覆盖绘图中使用的大小,并将仅为图例使用新的大小值。
要获取图例中的点和绘图解决方法中的线条,请添加geom_point(size=0)
以确保点不可见,然后在guides()
设置linetype=0
以删除线和size=3
获得更大的分数。
ggplot(iris,aes(Petal.Width,Petal.Length,color=Species))+geom_line()+theme_bw()+
geom_point(size=0)+
guides(colour = guide_legend(override.aes = list(size=3,linetype=0)))
答案 1 :(得分:1)
您可以使用包guide_legend()
中的scales
功能来实现您的效果。
此功能允许您覆盖绘图中指南(图例)的aes值。在您的情况下,您希望覆盖alpha
比例的size
和colour
值。
试试这个:
library(ggplot2)
library(scales)
ggplot(diamonds, aes(x, y, colour = cut)) +
geom_point(alpha = 0.25, size = 1) +
ylim(0, 12) +
guides(colour=guide_legend(override.aes=list(alpha=1, size=3)))