作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想制作一个散点图,其中每个点都有一个球体。点及其球体都根据某些列值着色。
一个显示我想要的最小示例:
library(ggplot2)
library(vcd) # only needed for example dataset
ggplot(Arthritis, aes(x = ID, y = Age)) +
geom_point(aes(color=Sex), size=10, alpha=.3) +
geom_point(aes(color=Treatment), size=3)
geom_point
层层叠叠的传说似乎乱七八糟。我想只有一个
geom_point
也会更有意义。图层并使用一个也添加笔划的形状,所以是这样的:
ggplot(Arthritis, aes(x = ID, y = Age)) +
geom_point(aes(color=Sex, fill=Treatment), shape=21, size=5, stroke=5)
alpha
.但是,我无法弄清楚是否以及如何将其与取决于数据的颜色一起使用。
geom_points
具有纯色和透明笔触但不是恒定颜色的?
最佳答案
您是在正确的轨道上认识到您可以使用功能 alpha()
,并且已经意识到您不能只放 alpha()
内aes()
.但是,您可以通过 alpha()
如 values=
任何 scale_*
内的参数职能。这是一个使用 mtcars
的示例:
ggplot(mtcars, aes(mpg, disp)) +
geom_point(
aes(color=factor(cyl), fill=factor(carb)),
shape=21, size=4, stroke=4) +
scale_color_manual(values=alpha(rainbow(3), 0.2))
factor(carb)
图例周围的那些大黑线不适合我。太棒了。您可以使用
guides()
函数并使用
override.aes=
来指定您想要显示的内容来摆脱它们在那里以及用什么替换它。在这种情况下,您可以设置
color=NA
以覆盖继承的美学为透明(仅留下
fill=
部分)。
ggplot(mtcars, aes(mpg, disp)) +
geom_point(
aes(color=factor(cyl), fill=factor(carb)),
shape=21, size=4, stroke=4) +
scale_color_manual(values=alpha(rainbow(3), 0.2)) +
guides(fill=guide_legend(override.aes = list(color=NA))) +
labs(color="cyl", fill="carb")
geom_point
的填充部分“后面”。 .您可能可以为此编写自己的自定义 stat/geom,但是
geom_point
总是先填充,然后描边。
关于R ggplot2 : How to draw geom_points that have a solid color and a transparent stroke and are colored depending on color?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62676917/
我是一名优秀的程序员,十分优秀!