小编mag*_*jac的帖子

如何将graphviz生成的SVG元素与DOT源代码中的元素相关联

因此,我使用 viz.js 从点文件生成了一个 svg 图。
现在,使用 javascript 很容易选择它的元素,但我看不到与原始点文件的任何关联。我在 viz.js 库中没有看到任何对象结构,它将生成的 svg 图表元素与点源元素联系起来,所以,如果我用鼠标选择 svg 元素,我会知道这个 svg 元素是对应的到点元素,它是从它生成的。有没有办法得到这样的反馈?我需要这个,这样,如果我在 svg 中编辑一个元素(在浏览器中可视化),我将能够将编辑映射回点文件并反映源上的更改。

解释

所以,这里是一个可能的源 GraphViz 点代码的例子:

digraph DB {
rankdir=LR
node [shape=record]

person [
    label="
        Person table|
        <id> Person ID|
        <fn> First Name|
        <mn> Middle Name|
        <ln> Last Name
    "
]

address [
    label="
        Addresses table|
        <id> Address ID|
        <pid> Person ID|
        <index> ZIP Code|
        <street> Street Name|
        <house> House Number|
        <town> City/Town/Village Name|
        <state> State Name|
        <district> County/District Name|
        <country> Country Name
    " …
Run Code Online (Sandbox Code Playgroud)

javascript svg graphviz d3.js

6
推荐指数
2
解决办法
4179
查看次数

在 Jupyter Python 中使用 Graphviz 设置节点位置

我想制作一个具有随机节点位置的图表,但节点的“pos”属性似乎没有任何作用。这是一个最小的例子:

import graphviz
import pylab
from graphviz import Digraph

g = Digraph('G', filename='ex.gv',format='pdf')
g.attr(size='7')
g.node('1',pos='1,2')
g.node('2',pos='2,3')
g.node('3',pos='0,0')
g.edge('1','2')
g.edge('1','3')
graphviz.Source(g)
Run Code Online (Sandbox Code Playgroud)

关于如何实现这一目标有什么想法吗?提前致谢。

python position graphviz nodes jupyter

4
推荐指数
1
解决办法
4232
查看次数

标签 统计

graphviz ×2

d3.js ×1

javascript ×1

jupyter ×1

nodes ×1

position ×1

python ×1

svg ×1