【发布时间】:2020-12-04 20:47:14
【问题描述】:
我已经尝试了几个选项,但我无法使其工作,我想在图中表示一个矩阵的值。
我试图用某些颜色表示不同的值,其余的用渐变调色板表示。
数值与颜色的对应关系为:
-
红色:-2
-
绿色:-1
-
黑色:-0.7
-
蓝色:-0.5
-
“YlOrRd”调色板:0-inf
这是我试过的代码,我不知道我做错了什么,但我只能用热调色板显示所有值。
y1<-c(-2,-1,-0.7,0.5,-2)
y2<-rep(-0.7,5)
y3<-seq(1,500,by=100)
y4<-rep(250,5)
y5<-seq(60,100,by=10)
heat<-rbind(y1,y2,y3,y4,y5)
bk = seq(-2, max(heat), length.out = 5)
color1 <- colorpanel(sum(bk[-1]<=-1.1), "red","red")
color2 <- colorpanel(sum(bk[-1]>-1.1 & bk[-1]<=-0.9), "green", "green")
color3 <- colorpanel(sum(bk[-1]>-0.9 & bk[-1]<=-0.6), "black","black")
color4 <- colorpanel(sum(bk[-1]>-0.6 & bk[-1]<=-0.4), "blue", "blue")
color5 <- colorpanel(sum(bk[-1]>-0.4), "yellow","red")
colors <- c(color1,color2,color3,color4,color5)
image(t(apply(heat, 2, rev)),col=colors)
如果有人能帮我解决这个问题,我将不胜感激。
【问题讨论】: