为 ggthemese 连续尺度设置中点
Setting midpoint for ggthemese continuous scales
在ggplot2
中,我们可以使用scale_fill_gradient2()
中的midpoint
参数来设置发散的中点,但是当我尝试使用[=中的颜色主题时,这并不存在14=] 例如scale_fill_gradient2_tableau()
# A tibble: 6 x 2
Year Value
<chr> <dbl>
1 2002 0.0109
2 2001 -0.0273
3 2000 0.0113
4 1999 0.0148
5 1998 0.00841
6 1997 0.0361
ggplot(df, aes(x = Year, y = Value)) +
geom_col(aes(fill = Value)) +
scale_fill_gradient2_tableau()
我希望中点为 0,但现在为 0.75。
您可以通过指定与零距离相等的限制,将颜色条居中于零,例如
library(tidyverse)
#install.packages("ggthemes")
library(ggthemes)
Year <- list("2002", "2001", "2000", "1999", "1998", "1997")
Value <- list(0.0109, -0.0273, 0.0113, 0.0148, 0.00841, 0.0361)
df <- do.call(rbind, Map(data.frame, Year=Year, Value=Value))
ggplot(df, aes(x = Year, y = Value)) +
geom_col(aes(fill = Value)) +
scale_fill_gradient2_tableau(limits = c(-0.04, 0.04))
在ggplot2
中,我们可以使用scale_fill_gradient2()
中的midpoint
参数来设置发散的中点,但是当我尝试使用[=中的颜色主题时,这并不存在14=] 例如scale_fill_gradient2_tableau()
# A tibble: 6 x 2
Year Value
<chr> <dbl>
1 2002 0.0109
2 2001 -0.0273
3 2000 0.0113
4 1999 0.0148
5 1998 0.00841
6 1997 0.0361
ggplot(df, aes(x = Year, y = Value)) +
geom_col(aes(fill = Value)) +
scale_fill_gradient2_tableau()
我希望中点为 0,但现在为 0.75。
您可以通过指定与零距离相等的限制,将颜色条居中于零,例如
library(tidyverse)
#install.packages("ggthemes")
library(ggthemes)
Year <- list("2002", "2001", "2000", "1999", "1998", "1997")
Value <- list(0.0109, -0.0273, 0.0113, 0.0148, 0.00841, 0.0361)
df <- do.call(rbind, Map(data.frame, Year=Year, Value=Value))
ggplot(df, aes(x = Year, y = Value)) +
geom_col(aes(fill = Value)) +
scale_fill_gradient2_tableau(limits = c(-0.04, 0.04))