当尝试使用来自gplots的venn()将维恩图输出到png文件时,奇怪的png图片

时间:2012-08-23 13:34:41

标签: r png venn-diagram

我希望将我的维恩图作为png文件。以下是未输出到文件时的外观:

library(gplots)
> x <- c("X","B")
> v <- c("X","A")
venn(list(x,v))

然后我明白了:http://postimage.org/image/d3nbyrp5f/277b50b3/,看起来不错。

但是这样做:

library(gplots)
> x <- c("X","B")
> v <- c("X","A")
> png(filename="test10.png")
> venn(list(x,v))
> dev.off()

给出:http://postimage.org/image/tpdywxxrp/a148b2db/,因为你可以看到png文件没有显示正确的维恩图,圆圈重叠,所以圆圈在另一个上面...

有什么方法可以克服这种奇怪的行为吗?

编辑:

通过加载cairoDevice来解决:

library(cairoDevice)

然后使用:

Cairo_png(filename="test.png")

用venn()正确输出维恩图。

2 个答案:

答案 0 :(得分:3)

这可能是透明度问题,你可以使用不同的维恩图工具,或使用支持透明度的图形设备,我相信开罗设备允许你创建png文件并尊重透明度。

答案 1 :(得分:3)

您必须将bg参数(在png函数中)设置为NA(透明),默认背景为白色。

library(gplots)
x <- c("X","B")
v <- c("X","A")
png("bgNA.png", bg = NA)
venn(list(x,v))
dev.off()

enter image description here