翻转doxygen的图表从上到下的方向从左到右

时间:2014-04-16 08:07:03

标签: orientation doxygen graphviz

包括”和“包含在”的doxygen图形创建时嵌套深度从上到下增加(使用1.8.5)。

由于我们大多数浅层图形都有很多节点,因此这会产生非常宽的图形,并带有丑陋的水平滚动条。有没有办法教doxygen以从左到右的方向创建这些图形,它创建调用者/调用图的方式?

我知道graphviz/dot支持这一点,但无法找到告诉doxygen的方法。

1 个答案:

答案 0 :(得分:2)

最近有一个类似的问题问我是否重复回答: Doxygen: Is it possible to control the orientation of dependency graphs?

在寻找同样的自己并找不到任何东西之后,我能提供的最好的就是使用图形属性rankdir进行黑客攻击。

步骤1)确保Doxygen保留点文件。在你的配置文件中放置DOT_CLEANUP = NO。

步骤2)找到Doxygen生成的点文件。应该是* __ incl.dot的形式。对于以下步骤,我将此文件称为<source>.dot

步骤3a)假设点文件未明确指定rankdir(通常默认为TB&#34;),使用此命令重新生成输出。

dot -Grankdir="LR" -Tpng -o<source>.png -Tcmapx -o<source>.map <source>.dot 

步骤3b)如果由于某种原因在点文件中指定了rankdir,请进入该文件并添加rankdir="LR"(默认情况下,rankdir设置为"TB")。

digraph "AppMain"
{
  rankdir="LR";
...

然后使用:

重新生成输出
dot -Tpng -o<source>.png -Tcmapx -o<source>.map <source>.dot 

每次运行Doxygen后都需要重做。批处理文件可能很方便,特别是如果要处理所有文件。对于步骤3b,批量替换文本超出了本答案的范围:)。但这里似乎是一个很好的答案:

How can you find and replace text in a file using the Windows command-line environment?