自定义颜色与geom_tile

时间:2015-07-23 11:35:24

标签: r ggplot2

如果我有一个如下所示的数据框:

return

使用geom_tile的正确方法是什么,以便将“列”作为x轴点,“位置”作为y轴点,“颜色”作为图块的实际颜色,绘制“名称”列的每个级别?

看起来应该是这样的:

enter image description here

1 个答案:

答案 0 :(得分:1)

我们需要将colfill参数设置为Color变量,然后使用scale_color_identityscale_fill_identity

library(ggplot2)

df1 <- read.table(text = "Name Track Position Color
A 0 1 #009ACD
B 1 15 #50568B
C 0 55 #8C7125
A 0 44 #009ACD
B -1 98 #50568B
D 0 99 #77DF98",header=TRUE,comment.char = "")

ggplot(df1, aes(Track, Position, col = Color, fill = Color)) +
  geom_tile() +
  scale_color_identity() +
  scale_fill_identity() +
  #prettify
  theme(panel.grid.major = element_blank(),
        panel.grid.minor = element_blank(),
        axis.ticks.y = element_blank(),
        axis.text.y = element_blank(),
        axis.title = element_blank())

enter image description here