使用R语言DiagrammeR包制作流程图时标签编辑问题咨询
R语言DiagrammeR流程图标签设置解决方案
核心问题解决方法
1. 标签部分内容加粗
DiagrammeR底层基于Graphviz,支持类HTML标签语法实现局部格式调整:
- 将原本用引号包裹的
label属性改为用尖括号<>包裹 - 需要加粗的内容用
<b>需加粗内容</b>包裹即可实现局部加粗,斜体、自定义颜色等其他格式调整也可通过同类HTML标签实现
2. 调整标签与节点的距离
通过边的两个原生参数即可灵活控制标签位置:
labeldistance:控制标签与对应边的距离,默认值为1,数值越大距离越远,可根据布局需求在1.2~2.5区间调整labelangle:控制标签相对边的偏移角度,默认值为-25,设置为0时标签与边平行展示
调整后完整代码
library(DiagrammeR) graph <- " digraph boxes_and_circles{ # 全局节点设置 node[ shape=box, style=rounded, fontname=Helvetica, penwidth=2, fixedsize = true, width=4 ] # 全局边设置 edge[ arrowhead = normal, arrowtail = none ] # 顶层节点连接 '@@1'->'@@2' [label=< <b>Cleaning Function:</b><br align="left"/> Text to lower case<br align="left"/> Contractions expanded<br align="left"/> Numbers replaced<br align="left"/> Abbreviations expanded (Qdap)<br align="left"/> NA’s ignored<br align="left"/> Kerns replaced<br align="left"/> White space removed >, fontname=Helvetica, fontsize=20, labeldistance=1.3] '@@2'->'@@3' '@@2'->'@@4' # 粉色分组(tidy text组)配置 graph [ compound = true, nodesep = 1, ranksep = 0.25, color = pink ] # tidy text子流程图 subgraph cluster0 { '@@3'->'@@5' [label=< <b>预处理步骤:</b><br align="left"/> -Tokenization<br align="left"/> -Lemetisation<br align="left"/> -Stop words removed >, fontname=Helvetica, fontsize=20, labeldistance=1.2] } # 蓝色分组(Dictionary组)配置 graph [ compound = true, nodesep = 1, ranksep = .25, color = blue ] # Dictionary子流程图 subgraph cluster1 { node [ fixedsize = true, width = 3 ] '@@4'->'@@6' [label=< <b>匹配步骤:</b><br align="left"/> Scoring function (sentimentr)<br align="left"/> Inner Join (dplyr) >,fontname=Helvetica, labeldistance=1.2] '@@6'->'@@7' [label=< <b>聚合步骤:</b><br align="left"/> Grouping<br align="left"/> Summarise (dplyr) >,fontname=Helvetica, labeldistance=1.2] '@@7'->'@@8' } # 全局节点间距配置 graph[nodesep=1] } # 节点命名 [1]: 'Response Data' [2]: 'Clean Data' [3]: 'Tidy Text' [4]: 'Dictionary Creation' [5]: 'Visualisation' [6]: 'Sentiment Lexicon' [7]: 'Summarised Text' [8]: 'Visualisation and Statistics' " # 渲染流程图 grViz(graph)
内容的提问来源于stack exchange,提问作者Gabriella
相关产品推荐
相关产品推荐

