我有一个具有以下结构的df:
id col1 col2 col3
#1 A 1 3 3
#2 B 2 2 3
#3 C 1 2 3
#4 D 3 1 1
我想创建一个“类似热图”的图形,其中 col1-col3 被视为因子变量(有五个级别 1-5,此处未全部显示),并且根据它们的值,它们会收到不同的颜色。我对以下代码的了解相对较远:
df <- melt(df, id.vars="id")
p <- ggplot(df, aes(x=variable, y=id, label=value, fill=as.factor(value))) +
geom_tile(colour="white", alpha=0.2, aes(width=0.4)) +
scale_fill_manual(values=c("yellow", "orange", "red", "green", "grey")) +
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) +
labs(x = "Value", y="id") +
scale_x_discrete(expand=c(0,0))+
scale_y_discrete(expand=c(0,0))
但是,由于某种原因,我的图块在 x 轴上(即每个因子级别之间)之间有很大的灰色空白空间。输出图像看起来像这样
另外,我在每个瓷砖中间都有这些细白线
所以我想做的是:1-改变瓷砖的大小和形状(希望它比现在更小)2-去除白色瓷砖中间的线。
谢谢!