我想在 RColorBrewer 的“Oranges”调色板中使用较深的颜色,以便在我的 ggplot(条形图)中使用。然而我却做不到。帮助。下面是示例代码:
my_palette = brewer.pal(n = 9, "Oranges")[4:9]
### Bar Plots ###
ggplot(Sample_df, aes(x = Sample_Score), fill = Sample_Score) +
geom_bar(stat = "count", width = 0.8) + scale_fill_brewer(palette= my_palette) + scale_y_log10(labels = comma) +
labs(title="Distribution of customers according to Sample Score",x="Sample Score", y="Number of Customers") +
theme(plot.title = element_text(face = "bold", size = 10),
axis.title.x = element_text(face = "bold", size = 8),
axis.title.y = element_text(face = "bold", size = 8), legend.position="none")
Run Code Online (Sandbox Code Playgroud)
P1s*_*ius 10
这是因为您正在使用scale_fill_brewer(). 该命令需要一个RColorBrewer调色板名称。(例如"Oranges")。它无法读取您的自定义调色板名称my_palette,而是使用scale_fill_manual()
我创建了一个自己的可重现示例:
library(RColorBrewer)
library(ggplot)
set.seed(1234)
df <- data.frame(x=runif(10,0,1), y=runif(10,0,1), c=factor(sample(1:5,10,replace=T)))
ggplot(data=df, aes(x=x,y=y)) + geom_point(aes(color=c)) + scale_color_brewer(palette = 'Oranges')
Run Code Online (Sandbox Code Playgroud)
如您所见,我将其称为RColorBrewer调色板"Oranges"。正如您提到的,这些颜色非常浅,您可能只想使用较深的颜色。为此,您可以创建一个自定义调色板并使用scale_color_manual()(或scale_fill_manual()根据您的情况)而不是 来调用它scale_color_brewer()。
my_palette <- brewer.pal(name="Oranges",n=9)[4:9]
ggplot(data=df, aes(x=x,y=y)) + geom_point(aes(color=c)) + scale_color_manual(values = my_palette)
Run Code Online (Sandbox Code Playgroud)
现在将使用您在中指定的颜色my_palette
| 归档时间: |
|
| 查看次数: |
4599 次 |
| 最近记录: |