geom_segment 中的 alpha 不工作
alpha in geom_segment not working
我尝试对情节进行一些改进,但遇到 geom_segment
中的 alpha
无法正常工作。对于最小工作示例,请检查:
ggplot(mtcars, aes(hp, mpg)) +
geom_point() +
geom_segment(aes(x = 100, xend = 200, y = 20, yend = 20),
inherit.aes = FALSE,
size = 10,
alpha = 0.5,
color = "blue")
但是,如果您将 alpha 更改为非常低的值(例如 0.005),则 0.001 似乎有效。您只能看到从 0.05 到 0.001 的一些效果。
alpha 值不是应该在 0 和 1 之间以线性方式变化还是我理解有误?
像这样,
# install.packages(c("tidyverse"), dependencies = TRUE)
library(tidyverse)
ggplot(mtcars, aes(hp, mpg)) +
geom_point() +
annotate('segment', x = 100, xend = 200, y = 20, yend = 20,
size = 10,
alpha = 0.5,
color = "blue")
ggplot2 正在绘制许多线段,一个在彼此之上,使线段不透明。您可以通过从 ggplot 函数中删除 data
并将其添加到所需的图层来解决它。其他 geoms 的类似问题 and here.
ggplot() +
geom_point(data=mtcars, aes(hp, mpg)) +
geom_segment(aes(x = 100, xend = 200, y = 20, yend = 20),
inherit.aes = FALSE,
size = 10,
alpha = 0.5,
color = "blue")
另一种选择是像 Eric 那样使用注释:
ggplot(mtcars) +
geom_point(aes(hp, mpg)) +
annotate(
'segment',
x = 100,
xend = 200,
y = 20,
yend = 20,
size = 10,
colour = "blue",
alpha = 0.5
)
我尝试对情节进行一些改进,但遇到 geom_segment
中的 alpha
无法正常工作。对于最小工作示例,请检查:
ggplot(mtcars, aes(hp, mpg)) +
geom_point() +
geom_segment(aes(x = 100, xend = 200, y = 20, yend = 20),
inherit.aes = FALSE,
size = 10,
alpha = 0.5,
color = "blue")
但是,如果您将 alpha 更改为非常低的值(例如 0.005),则 0.001 似乎有效。您只能看到从 0.05 到 0.001 的一些效果。
alpha 值不是应该在 0 和 1 之间以线性方式变化还是我理解有误?
像这样,
# install.packages(c("tidyverse"), dependencies = TRUE)
library(tidyverse)
ggplot(mtcars, aes(hp, mpg)) +
geom_point() +
annotate('segment', x = 100, xend = 200, y = 20, yend = 20,
size = 10,
alpha = 0.5,
color = "blue")
ggplot2 正在绘制许多线段,一个在彼此之上,使线段不透明。您可以通过从 ggplot 函数中删除 data
并将其添加到所需的图层来解决它。其他 geoms 的类似问题
ggplot() +
geom_point(data=mtcars, aes(hp, mpg)) +
geom_segment(aes(x = 100, xend = 200, y = 20, yend = 20),
inherit.aes = FALSE,
size = 10,
alpha = 0.5,
color = "blue")
另一种选择是像 Eric 那样使用注释:
ggplot(mtcars) +
geom_point(aes(hp, mpg)) +
annotate(
'segment',
x = 100,
xend = 200,
y = 20,
yend = 20,
size = 10,
colour = "blue",
alpha = 0.5
)