我有一个看起来像
的矩阵4 1
7 2
4 1
2 3
12 4
其中左列指定条形图中每个条形的高度,右列指定具有十六进制颜色的矢量的索引。条形图中的每个条形都应该收到右栏中索引的颜色。有一个简单的方法吗?
问题是关于如何使用右列作为索引而不是直接作为R中的颜色。具有颜色的矢量被命名为颜色,如果右列是1,则以十六进制格式(带有#)的颜色是存储在颜色[1]中,即#ADCD00
答案 0 :(得分:0)
# your data
m <- read.table(text="4 1
7 2
4 1
2 3
12 4", header=FALSE)
# plot
barplot(m[,1], col=m[,2])
结果:
请注意,条形图中使用的颜色来自palette()
。您可以通过指定替代颜色矢量来使用不同的颜色。以下是一些例子:
library("colourlovers")
p <- clpalettes()
layout(matrix(1:4, nrow=2))
for(i in 1:4) barplot(m[,1], col = swatch(p[[i]])[[1]][m[,2]])
结果: