添加颜色和范围为R的图例 [英] Add legend with color and range in R

查看:16
本文介绍了添加颜色和范围为R的图例的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下示例代码根据a的值生成彩色点图:

a <- sample(1:100)
rbPal <- colorRampPalette(c('red','blue'))
b <- rbPal(10)[as.numeric(cut(a,breaks = 10))]
plot(a,col=b,pch=16)

我想在此图表中添加一个图例,以指示颜色所指的值范围。 类似于:

 "#C60038" - [20.7 - 30.7]
 "#5500AA" - [60.4 - 70.3]

(上面的颜色代码是彩色圆点)。

推荐答案

您可以使用函数levels()cut()级别保存为单独的变量。使用函数gsub()可以将,替换为-,将(替换为[。然后在函数legend()中提供图例的位置,变量cuts用作标签,col=rbPal(10)将在图例中使用相同的10种颜色,pch=16将生成填充的圆点。

cuts<-levels(cut(a,breaks = 10))
cuts<-gsub(","," - ",cuts)
cuts<-gsub("\(","[",cuts)
cuts
 [1] "[0.901 - 10.8]" "[10.8 - 20.7]"  "[20.7 - 30.7]"  "[30.7 - 40.6]"  "[40.6 - 50.5]"  "[50.5 - 60.4]"  "[60.4 - 70.3]" 
 [8] "[70.3 - 80.3]"  "[80.3 - 90.2]"  "[90.2 - 100]"  
plot(a,col=b,pch=16)
legend("top",cuts,col=rbPal(10),pch=16)

这篇关于添加颜色和范围为R的图例的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆