Недавно я обновился до версии R 3.2.3
, а также до версии ggplot 2.0.0
.Ggplot2 различное поведение альфа
Пытаясь обновить старый код до более новых версий, я столкнулся с странным поведением с ggplot2 и его настройками прозрачности.
Теперь мой вопрос в том, является ли это ошибкой или функцией (если да, может кто-нибудь просветить меня, почему это так хорошо)? В результате я хочу иметь (очевидно) Заговор 2.
Say I участок линии и лежал прямоугольник с прозрачностью над ним, как это:
library(ggplot2)
plot_data <- data.frame(x = 1:100, y = rnorm(100))
# Plot 1
ggplot(data = plot_data, aes(x = x, y = y)) +
geom_line() +
geom_rect(aes(xmin = 20, xmax = 50, ymin = -Inf, ymax = Inf), fill = "red",
alpha = 0.1) + ggtitle("Plot 1")
# Plot 2
ggplot() +
geom_line(data = plot_data, aes(x = x, y = y)) +
geom_rect(aes(xmin = 20, xmax = 50, ymin = -Inf, ymax = Inf), fill = "red",
alpha = 0.1) + ggtitle("Plot 2")
моему пониманию участка 1 и 2 должны быть одинаковыми , Тем не менее, я получаю следующие участки:
Участок 1:
и участок 2:
Кроме того, если я поиграться с alpha
-значения (для например, установив их на 0.01
, я получу два следующих графика:
и
в вашем участке 2, если добавить данные = plot_data к вашему geom_rect() вы получите те же результаты, как Plot1 – MLavoie
Что интересно, но не отражает альфа 0,1 (вполне прозрачно) для моего понимания ! – David