我需要增加使用colorfulVennPlot创建的维恩图中数字的大小,如下例所示。非常感谢任何帮助。
library(colorfulVennPlot)
y <- c(37,29,6,232,121,77,25)
names(y) <- c("001","010","011","100","101","110","111")
labels <- c("A","B","C")
plot.new()
plotVenn3d(y, labels, Colors=rainbow(7), Title = "This is an example of a 3D Venn plot")
答案 0 :(得分:1)
可以使用shrink
参数调整标签和标题。但我没有看到在当前版本的plotVenn3d
中更改维恩图中数字的方法。可能有一个更简单的解决方法,但一个选项是创建plotVenn3d
函数的调整版本,并添加一个新参数来调整数字的大小。
要获取功能代码,只需在控制台中输入plotVenn3d
即可。将代码复制到新的R脚本文件,并为函数指定一个新名称,例如myVenn
。现在,转到函数的最后一行并从中更改它:
for (i in 1:7) grid.text(values[i], centerLocations[i, 1],
centerLocations[i, 2])
到此:
for (i in 1:7) grid.text(values[i], centerLocations[i, 1],
centerLocations[i, 2], gp=gpar(fontsize=num.size))
注意我们是如何添加一个新参数num.size
来设置维恩图中数字的字体大小。现在回到我们声明函数参数的顶部,并从中更改它:
myVenn = function (x, labels = c("A", "B", "C"),
Colors = c("red", "yellow", "orange", "lightblue", "purple",
"green", "grey"),
Title = NULL, shrink = 1, rot = 0)
到此(为了将num.size
参数添加到函数声明中):
myVenn = function (x, labels = c("A", "B", "C"),
Colors = c("red", "yellow", "orange", "lightblue", "purple",
"green", "grey"),
Title = NULL, shrink = 1, rot = 0, num.size=20)
运行新函数的代码以将函数加载到全局环境中。现在,您可以使用myVenn
绘制数据并使用num.size
的值,直到获得您喜欢的内容。
例如:
myVenn(y, labels, Colors=rainbow(7), Title = "This is an example of a 3D Venn plot",
num.size=50)