在绘制R中用igraph生成的网络时,是否有可能控制轴标签的字体大小? 与包" network"相反,cex.lab在传递给' plot'时没有任何改变。
一个例子:
library(igraph)
testnet <- graph_from_adjacency_matrix(diag(10))
plot(testnet,xlab="This is xlab Text")
par(mfrow=c(2,3))
replicate(6,plot(testnet,xlab="This is xlab Text"))
replicate(6,plot(testnet,xlab="This is xlab Text",cex.lab=10))
在一个页面上有多个图表,默认字体太小。
请注意,我不是在谈论设置顶点标签的大小(vertex.label.cex)。
答案 0 :(得分:3)
这是解决您问题的方法(即使它不是解决方案)。获得所需内容的一种可能性是省略x标签并在绘图下方添加可自定义的文本。
par(mfrow=c(1,2))
# plot with x-axis label
plot(graph_from_adjacency_matrix(diag(10)), xlab = "mylab")
# plot w/o x-axis label + text
plot(graph_from_adjacency_matrix(diag(10)))
text(0, -1.8, labels = "myxlab", cex = 2.5)
答案 1 :(得分:1)
另一种选择:将标签尺寸添加到par
。
所有地块的一个尺寸
rr <- 2; cc <- 3
par(mfrow=c(rr,cc), cex.lab=1.5)
replicate(6,plot(testnet,xlab="This is xlab Text"))
图表的大小不同:
par(mfrow = c(rr,cc))
plot.new()
cex.labs <- matrix(runif(2*3, 1, 3), ncol=cc, nrow=rr)
for (x in seq_len(rr))
for (y in seq_len(cc)) {
par(mfg=c(x,y), cex.lab = cex.labs[x,y])
plot(testnet,xlab="This is xlab Text")
}