hbmartin / graphviz2drawio

Convert graphviz (dot) files into draw.io / lucid (mxGraph) format
http://graphviz2drawio.rtfd.io
GNU General Public License v3.0
164 stars 33 forks source link

Edge labeling #29

Closed jebacpogotowietylkobukmozemnieleczyc closed 2 weeks ago

jebacpogotowietylkobukmozemnieleczyc commented 4 years ago

Is there a possibility to convert edge labels?

graphviz: graph

draw.io: Untitled Diagram

dot:

digraph {
    "$$x_t$$" [color="#187DF9" fill="#187DF9" fillcolor="#187DF9" fontcolor=white shape=box style=filled]
    Conv2d [color=plum fill=plum fillcolor=plum fontcolor=white shape=ellipse style=filled]
    "$$x_t$$" -> Conv2d [label="$$x_t$$" value=x_t]
    Conv2d2 [color=orange fill=orange fillcolor=orange fontcolor=white shape=ellipse style=filled]
    "$$x_t$$" -> Conv2d2 [label="$$x_t$$" value=x_t]
    "|" [color=black fill=black fillcolor=black fontcolor=black shape=point style=filled]
    "$$x_t$$" -> "|" [label="$$x_t$$" value=x_t]
    Conv2d [color=thistle fill=thistle fillcolor=thistle fontcolor=white shape=box style=filled]
    MaxPooling [color=steelblue1 fill=steelblue1 fillcolor=steelblue1 fontcolor=white shape=ellipse style=filled]
    Conv2d -> MaxPooling [label="$$g_t$$" value=g_t]
    Conv2d2 [color=steelblue1 fill=steelblue1 fillcolor=steelblue1 fontcolor=white shape=box style=filled]
    "|" [color=black fill=black fillcolor=black fontcolor=black shape=point style=filled]
    Conv2d2 -> "|" [label="$$c_t$$" value=c_t]
    MaxPooling [color=steelblue1 fill=steelblue1 fillcolor=steelblue1 fontcolor=white shape=box style=filled]
    Dropout [color=plum fill=plum fillcolor=plum fontcolor=white shape=ellipse style=filled]
    MaxPooling -> Dropout [label="$$s_t$$" value=s_t]
    Dropout [color=plum fill=plum fillcolor=plum fontcolor=white shape=box style=filled]
    "." [color=skyblue fill=skyblue fillcolor=skyblue fontcolor=skyblue height=0.01 shape=doublecircle style=filled width=0.01]
    Dropout -> "." [label="$$s_{t+1}$$" value="s_{t+1}"]
    "|" [color=black fill=black fillcolor=black fontcolor=black shape=point style=filled]
    "$$W_x$$" [color=plum fill=plum fillcolor=plum fontcolor=white shape=ellipse style=filled]
    "|" -> "$$W_x$$" [label="$$[x_t, c_t]$$" value="[x_t, c_t]"]
    "$$W_x$$" [color=plum fill=plum fillcolor=plum fontcolor=white shape=box style=filled]
    "." [color=skyblue fill=skyblue fillcolor=skyblue fontcolor=skyblue height=0.01 shape=doublecircle style=filled width=0.01]
    "$$W_x$$" -> "." [label="$$x_{t-1}$$" value="x_{t-1}"]
    "." [color=skyblue fill=skyblue fillcolor=skyblue fontcolor=skyblue height=0.01 shape=doublecircle style=filled width=0.01]
    "$$W_q$$" [color=powderblue fill=powderblue fillcolor=powderblue fontcolor=white shape=ellipse style=filled]
    "." -> "$$W_q$$" [label="$$q_t$$" value=q_t]
    "$$W_q$$" [color=powderblue fill=powderblue fillcolor=powderblue fontcolor=white shape=box style=filled]
    "$$l_t$$" [color=thistle fill=thistle fillcolor=thistle fontcolor=white shape=ellipse style=filled]
    "$$W_q$$" -> "$$l_t$$" [label="$$l_t$$" value=l_t]
    "$$x_t$$" [color=thistle fill=thistle fillcolor=thistle fontcolor=white shape=ellipse style=filled]
}

mxGraph

<?xml version="1.0"?><mxGraphModel><root><mxCell id="0" /><mxCell id="1" parent="0" /><mxCell edge="1" id="edge1" parent="1" source="node1" style="rounded=1;html=1;exitX=0.181;exitY=0.889;entryX=0.951;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node2"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge2" parent="1" source="node1" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node3"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge3" parent="1" source="node1" style="rounded=1;html=1;exitX=0.867;exitY=0.846;entryX=1;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node4"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge4" parent="1" source="node2" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node5"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge5" parent="1" source="node3" style="edgeStyle=orthogonalEdgeStyle;curved=1;rounded=1;html=1;exitX=0.5;exitY=1;entryX=0;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node4"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge6" parent="1" source="node4" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node6"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge7" parent="1" source="node5" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node7"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge10" parent="1" source="node6" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=1;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node8"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge8" parent="1" source="node7" style="edgeStyle=orthogonalEdgeStyle;curved=1;rounded=1;html=1;exitX=0.5;exitY=1;entryX=0;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node8"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge9" parent="1" source="node8" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node9"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell edge="1" id="edge11" parent="1" source="node9" style="rounded=1;html=1;exitX=0.5;exitY=1;entryX=0.5;entryY=0;jettySize=auto;orthogonalLoop=1;endArrow=block;dashed=0;endFill=1;" target="node10"><mxGeometry as="geometry" relative="1" /></mxCell><mxCell id="node1" parent="1" style="ellipse;verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=1;fillColor=thistle;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;$$x_t$$&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="96.3834" x="100.3083" y="4.0" /></mxCell><mxCell id="node2" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#d8bfd8;strokeWidth=1;fillColor=thistle;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;Conv2d&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="71.0" x="19.0" y="90.99999999999994" /></mxCell><mxCell id="node3" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#63b8ff;strokeWidth=1;fillColor=steelblue1;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;Conv2d2&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="80.0" x="108.5" y="90.99999999999994" /></mxCell><mxCell id="node4" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=1;fillColor=black;" value="" vertex="1"><mxGeometry as="geometry" height="3.6" width="3.6" x="172.7" y="194.19999999999993" /></mxCell><mxCell id="node5" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#63b8ff;strokeWidth=1;fillColor=steelblue1;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;MaxPooling&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="101.0" x="4.0" y="177.99999999999994" /></mxCell><mxCell id="node6" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#dda0dd;strokeWidth=1;fillColor=plum;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;$$W_x$$&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="83.0" x="133.0" y="264.99999999999994" /></mxCell><mxCell id="node7" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#dda0dd;strokeWidth=1;fillColor=plum;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;Dropout&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="75.0" x="17.0" y="264.99999999999994" /></mxCell><mxCell id="node8" parent="1" style="ellipse;shape=doubleEllipse;aspect=fixed;verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=1;fillColor=skyblue;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#87ceeb;'&gt;.&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="32.1516" width="32.1516" x="98.4242" y="356.1875999999999" /></mxCell><mxCell id="node9" parent="1" style="verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#b0e0e6;strokeWidth=1;fillColor=powderblue;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;$$W_q$$&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="84.0" x="72.5" y="443.52689999999996" /></mxCell><mxCell id="node10" parent="1" style="ellipse;verticalAlign=top;align=left;overflow=fill;html=1;rounded=0;shadow=0;comic=0;labelBackgroundColor=none;strokeColor=#000000;strokeWidth=1;fillColor=thistle;" value="&lt;p style='margin:0px;text-align:center;margin-top:4px;;font-size:10.0px;font-family:Times,serif;color:#ffffff;'&gt;$$l_t$$&lt;/p&gt;" vertex="1"><mxGeometry as="geometry" height="36.0" width="92.5846" x="68.2077" y="530.5269" /></mxCell></root></mxGraphModel>
hbmartin commented 2 weeks ago

This is fixed in the upcoming 0.3 release and automated testing has been added for that file. Feel free to reopen or create a new issue if that release does not work as you expect. Thanks for the report!