【问题标题】:high resolution heatmap in rr中的高分辨率热图
【发布时间】:2019-10-03 00:49:46
【问题描述】:

我使用了下面的 R 列表并得到了一个非常好的heatmap

png( "test-8.png", width =800 , height =750 )
heatmap(1-cor(df),distfun=function(x){as.dist(x)},symm=F,Rowv=NULL, Colv=NULL)
dev.off()

但它的分辨率很低。谷歌搜索后,我找到了可能的解决方案:

png( "test-8.png", width =800 , height =750,res=600 )
heatmap(1-cor(df),distfun=function(x){as.dist(x)},symm=F,Rowv=NULL, Colv=NULL)
dev.off()

不幸的是,我在代码执行后收到了错误消息:

Error in par(op) : invalid value specified for graphical parameter "pin"
Calls: heatmap -> par
Execution halted

我该如何管理它?任何建议将不胜感激。

【问题讨论】:

  • 如果你能让这个可以重现就好了。
  • 您是否尝试增加高度和宽度?我不知道当您将图像缩小到小于 2x2 英寸时会发生什么
  • @rawr 太棒了!这正是原因。

标签: r heatmap


【解决方案1】:

您的设置可能会将pin 的大小减小到最小允许值以下(仍在寻找相关文档)。尝试使用以下内容。您可能需要加载 grid 包以使单位参数起作用。

png("high_res.png", width = 4, height = 4, units = 'in', res = 600)
heatmap(1-cor(df),distfun=function(x){as.dist(x)},symm=F,Rowv=NULL, Colv=NULL)
dev.off()

【讨论】:

  • 您的代码稍作调整(我使用了width = 6, height = 6)非常适合我。
【解决方案2】:

我遇到了同样的问题并运行了以下代码,

par()

显示了很多项目。其中之一是 $pin ,它有两个值。一个是负面的。我尝试了以下,

par(pin=c(0,0))

这似乎起到了作用。我仍然不知道这意味着什么以及为什么会发生错误。

【讨论】:

    猜你喜欢
    • 2016-12-18
    • 1970-01-01
    • 1970-01-01
    • 2012-01-15
    • 2011-04-07
    • 2014-11-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多