使用R中的ggplot对热图进行着色和引用

时间:2017-06-11 20:46:31

标签: r ggplot2 colors heatmap

我有以下代码,它在R中生成以下热图。

ggplot(data = hminput, color=category, aes(x = Poblaciones, y = Variantes)) +
  geom_tile(aes(fill = Frecuencias)) + scale_colour_gradient(name = "Frecuencias",low = "blue", high = "white",guide="colourbar")

enter image description here

hminput是一个包含三列的数据框:Poblaciones,Variantes和Frecuencias,前两个是x和y轴,第三个是颜色参考。

我想要的输出是热图以条形作为参考而不是那些块,并且着色是白蓝渐变而不是那种多色渐变。 为了达到这个目的,我尝试了我的代码中的内容,但我没有实现我想要的东西(我得到了你在图片中看到的图形)。有什么想法吗?谢谢!

有些人问,这是数据框的输入:

> dput(hminput)
structure(list(Variantes = structure(c(1L, 2L, 3L, 4L,...), .Label = 
c("rs10498633", "rs10792832", "rs10838725", 
"rs10948363", ..., "SNP"), class = "factor"), 
Poblaciones = c("AFR", "AFR", ...), Frecuencias = structure(c(12L, 
10L,...), .Label = c("0.01135", "0.0121", 
"0.01286", "0.01513", "0.02194", "0.05144", "0.05825", "0.059", 
"0.07716", "0.0938", "0.1051", "0.1225", "0.1346", "0.1407", 
"0.1566", "0.1604", "0.1619", "0.1838", "0.1914", "0.1929", 
..., 
"0.45", "0.5", "0.4"), class = "factor")), .Names = c("Variantes", 
"Poblaciones", "Frecuencias"), row.names = c("frqAFR.33", "frqAFR.31", 
"frqAFR.27", "frqAFR.14", "frqAFR.24",...
), class = "data.frame")

0 个答案:

没有答案