如何在 ggplot guide_colorsteps 中自定义某些标签,但保留默认值?
我正在尝试使用 选择性地标记颜色条的子集geom_contour_filled,同时继续使用默认的 ggplot 调色板。通过调整这篇文章中的函数,我已经弄清楚了如何完成第一部分:如何在 ggplot guide_colorsteps 中自定义标签? 但是,我无法弄清楚如何替换标签而不需要提供一组将更改调色板的值;我想保留 ggplot 托盘。解决这个问题的最佳方法是什么?
require(ggplot2)
require(RColorBrewer)
fun_lab <- function(x) {
x[!(x %in% c(1, 2, 3))]<- "" # selected values to label
return(x)
}
ggplot(data=faithfuld, aes(x=waiting, y=eruptions)) +
geom_contour_filled(aes(z=100*density),show.legend=T) +
scale_fill_manual(values=brewer.pal(11,"Spectral"), # would like to omit this
labels = fun_lab,
guide = guide_colorsteps(direction="horizontal",
title.position="top")) +
theme(legend.position="top")
这会产生以下图,它按照我想要的方式格式化标签,但会更改默认颜色:
所需的标签格式
但是,我的目标是使用 使用的默认调色板生成一个绘图,geom_contour_filled如下所示。
ggplot(data=faithfuld, aes(x=waiting, y=eruptions)) +
geom_contour_filled(aes(z=100*density),show.legend=T) +
theme(legend.position="top")