Мой вопрос заключается в том, что мне нужен расходящийся цвет для моей тепловой карты с использованием geom_tile
, а цвет градиента варьируется на обоих концах шкалы. Например, вся шкала (-1,1), мне нужны только значения от -1 до -0,5, а значения от 0,5 до 1,0 имеют градиентный цвет, а значения от -0,5 до 0,5 остаются белыми. Однако я не могу найти вариант в scale_fill_gradient
для достижения цели. Воспроизводимый пример приведен ниже, а данные взяты из тепловых карт ggplot2: использование разных градиентов для категории
nba <- read.csv("http://datasets.flowingdata.com/ppg2008.csv")
nba$Name <- with(nba, reorder(Name, PTS))
library("ggplot2")
library("plyr")
library("reshape2")
library("scales")
nba.m <- melt(nba)
nba.s <- ddply(nba.m, .(variable), transform,
rescale = scale(value))
ggplot(nba.s, aes(variable, Name))+geom_tile(aes(fill = rescale), colour = "white") +
scale_fill_gradient(low = "darkgreen", high = "darkred")