sankey图中的标签大小(riverplot包)

时间:2015-01-28 19:33:37

标签: r visualization sankey-diagram riverplot

使用案例 我使用riverplot package绘制sankey图表。我需要调整图中节点标签的文本大小。在我的情况下,默认大小太大了。

问题,我已经尝试过了: 不幸的是,该包不适用于cex参数。该软件包的开发人员没有向我提供指导。 [R 可重现的示例:

library(riverplot)

plot(riverplot.example())

生成:

enter image description here

问题:

如何将节点标签(A,B,...)调整为比默认值更小或更大的尺寸?

2 个答案:

答案 0 :(得分:4)

包本身不提供任何设置文本大小的方法。 (你可以看到,如果你在意,可以向下钻取riverplot:::plot.riverplot()riverplot()riverplot:::draw.nodes();标签是由最后一个函数的最后几行绘制的,这只是(隐含地)使用cex等人的全局值

但是,如果您只想统一放大或缩小节点标签的大小,则可以通过相对简单的方法进行修复。您可以暂时重置cex的全局值,构建绘图,然后将cex重置为原始值:

library(riverplot)

op <- par(cex=0.8)
plot(riverplot.example())
par(op)

enter image description here

答案 1 :(得分:2)

您可以通过在基本默认样式的基础上应用自定义样式并避免临时更改环境设置,如接受的答案(这是几年之久,因此从那时起河流图可能会发生变化)。

使用自定义字体大小创建自定义样式:

# create a custom style by first copying from the default style
custom.style <- riverplot::default.style()

# change the font size
custom.style$textcex <- 0.8

现在只需在渲染绘图时应用自定义样式:

plot(my.river.plot, default_style=custom.style)