Я просто надеюсь почистить свой код и кое-что узнать. Я чувствую, что делаю это более сложным, чем должно быть. У меня есть диапазон данных от 0 до 9, и я хотел бы указать цвет для значений в этом диапазоне. Например:
0-3 green
4-6 yellow
7-9 red
Это единственный способ, которым я смог заставить его работать. Я чувствую, что должен быть способ указать диапазоны в перерывах. т. е. 0-3 = зеленый и т. д.
ggplot() +
geom_raster(data = data, aes(x = samples, y = organism, fill = as.factor(value))) +
scale_fill_manual(values=c("green", "green", "green","green", "yellow","yellow","yellow", "red","red", "red"), breaks=c(0,1,2,3,4,5,6,7,8,9))
Следующий код работает нормально, но всякий раз, когда я пытаюсь создать диапазон внутри разрывов, я получаю сообщение об ошибке:
breaks=c(0-3,4-6,7-9)
Error: Insufficient values in manual scale. 10 needed but only 3 provided.
Я надеюсь, что это довольно понятно. При необходимости я могу предоставить образец набора данных (ниже). Спасибо за ваше время!
samples,organism,value
a,z,0
b,z,1
c,z,2
d,z,3
e,z,4
f,z,5
g,z,6
h,z,7
i,z,8
j,z,9