Code Monkey home page Code Monkey logo

graphvizonline's People

Contributors

atry avatar dreampuf avatar philiptzou avatar strazto avatar timabell avatar unicodingunicorn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

graphvizonline's Issues

Short links

Could you please make short links for the URL for the graphs? If someone wants to share a link to a graph they created with this, they would need a short link to use. The link for the default graph is longer than an entire IRC message. If someone creates a large graph with problems they want to share, where message lengths are finite, the current URLs won't work. Those URLs won't fit in a Twitter message where the problem is also spelled out, for example.

Open in new tab on chrome

Hi,

I really appreciate this great utility, and use it in my work.
Up until recently in Chrome I was able to right click on the SVG generated and 'Open in new tab'.
That capability has gone, presumably a change in Chrome, it would be great if you were able to find a way of re-enabling it.

best regards

Export as PDF

Hi, is it possible to export the graph as a PDF rather than a png?

I can help implement this if you point me the direction.

Presentation mode - Display only the rendered graph

It would be really nice if you where able to hide everything except the rendered graph, like a presentation mode and make that changeable via the query params.

My use case is that i want to publish graphs on our intranet and i don't want to have to export and upload an image every time i need to change them. It would be fantastic if i was able to create an iframe with a url to GraphvisOnline and set the url parameter to a url of my graph representation and then the iframe content will be only the final rendering of the graph

Let me know if you think this is a good idea, and I can see if I have the possibility to put some time into this and create a PR

Thanks for a very useful product

Import from Github gist

It would be convenient if it were possible to dump the .dot/.gv file into a Github gist and then share a dreampuf link that is significantly shorten than: https://dreampuf.github.io/GraphvizOnline/#strict%20digraph%20DiskGraph%20%7B%0A%09graph%20%5Bbb%3D%220%2C0%2C1235%2C443.84%22%2C%0A%09%09nodesep%3D0.35%0A%09%5D%3B%0A%09node%20%5Blabel%3D%22%5CN%22%5D%3B%0A%09edge%20%5Bcolorscheme%3Dpaired12%5D%3B%0A%09subgraph%20cluster_graph%20%7B%0A%09%09graph%20%5Bbb%3D%228%2C8%2C879%2C431.81%22%2C%0A%09%09%09color%3Dwhite%0A%09%09%5D%3B%0A%09%09%7B%0A%09%09%09graph%20%5Brank%3Dsame%5D%3B%0A%09%09%09-4678409207515090095%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20Null%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%22%2C%0A%09%09%09%09pos%3D%22428%2C386.34%22%2C%0A%09%09%09%09style%3Dfilled%2C%0A%09%09%09%09width%3D5.6372%5D%3B%0A%09%09%7D%0A%09%09%7B%0A%09%09%09graph%20%5Brank%3Dsame%5D%3B%0A%09%09%093675886290632349128%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t1%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20TRUE%20%40%40%20t2%20%3A%3E%20FALSE)%22%2C%0A%09%09%09%09pos%3D%22232%2C275.38%22%2C%0A%09%09%09%09width%3D5.5194%5D%3B%0A%09%09%09-4891499473505380123%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t2%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20TRUE)%22%2C%0A%09%09%09%09pos%3D%22654%2C275.38%22%2C%0A%09%09%09%09width%3D5.5194%5D%3B%0A%09%09%7D%0A%09%09%7B%0A%09%09%09graph%20%5Brank%3Dsame%5D%3B%0A%09%09%09-1891075296837866694%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t2%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20TRUE%20%40%40%20t2%20%3A%3E%20TRUE)%22%2C%0A%09%09%09%09pos%3D%22210%2C164.43%22%2C%0A%09%09%09%09width%3D5.4015%5D%3B%0A%09%09%096551234386972865759%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t1%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20TRUE%20%40%40%20t2%20%3A%3E%20TRUE)%22%2C%0A%09%09%09%09pos%3D%22677%2C164.43%22%2C%0A%09%09%09%09width%3D5.4015%5D%3B%0A%09%09%7D%0A%09%09%7B%0A%09%09%09graph%20%5Brank%3Dsame%5D%3B%0A%09%09%098999254966766664384%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t2%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20TRUE%20%40%40%20t2%20%3A%3E%20FALSE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20TRUE)%22%2C%0A%09%09%09%09pos%3D%22232%2C53.477%22%2C%0A%09%09%09%09width%3D5.5194%5D%3B%0A%09%09%094362618074356267131%09%09%09%20%5Bheight%3D1.041%2C%0A%09%09%09%09label%3D%22%2F%5C%5C%20victim%20%3D%20t1%5Cn%2F%5C%5C%20owner%20%3D%20(t1%20%3A%3E%20FALSE%20%40%40%20t2%20%3A%3E%20TRUE)%5Cn%2F%5C%5C%20wasVictim%20%3D%20(t1%20%3A%3E%20TRUE%20%40%40%20t2%20%3A%3E%20FALSE)%22%2C%0A%09%09%09%09pos%3D%22663%2C53.477%22%2C%0A%09%09%09%09width%3D5.5194%5D%3B%0A%09%09%7D%0A%09%09-4678409207515090095%20-%3E%203675886290632349128%09%09%20%5Bcolor%3D2%2C%0A%09%09%09fontcolor%3D2%2C%0A%09%09%09pos%3D%22e%2C294.98%2C311.03%20364.91%2C350.62%20345.41%2C339.58%20323.79%2C327.35%20303.76%2C316%22%5D%3B%0A%09%09-4678409207515090095%20-%3E%20-4891499473505380123%09%09%20%5Bcolor%3D2%2C%0A%09%09%09fontcolor%3D2%2C%0A%09%09%09pos%3D%22e%2C582.57%2C310.45%20499.51%2C351.23%20523.01%2C339.69%20549.3%2C326.78%20573.44%2C314.94%22%5D%3B%0A%09%093675886290632349128%20-%3E%20-1891075296837866694%09%09%20%5Bcolor%3D2%2C%0A%09%09%09fontcolor%3D2%2C%0A%09%09%09pos%3D%22e%2C217.44%2C201.96%20224.55%2C237.82%20222.9%2C229.51%20221.14%2C220.59%20219.42%2C211.94%22%5D%3B%0A%09%09-4891499473505380123%20-%3E%206551234386972865759%09%09%20%5Bcolor%3D2%2C%0A%09%09%09fontcolor%3D2%2C%0A%09%09%09pos%3D%22e%2C669.22%2C201.96%20661.79%2C237.82%20663.51%2C229.51%20665.36%2C220.59%20667.15%2C211.94%22%5D%3B%0A%09%09-1891075296837866694%20-%3E%208999254966766664384%09%09%20%5Bcolor%3D3%2C%0A%09%09%09fontcolor%3D3%2C%0A%09%09%09pos%3D%22e%2C224.56%2C91.002%20217.45%2C126.87%20219.1%2C118.55%20220.86%2C109.64%20222.58%2C100.98%22%5D%3B%0A%09%096551234386972865759%20-%3E%204362618074356267131%09%09%20%5Bcolor%3D3%2C%0A%09%09%09fontcolor%3D3%2C%0A%09%09%09pos%3D%22e%2C667.73%2C91.002%20672.26%2C126.87%20671.21%2C118.55%20670.09%2C109.64%20668.99%2C100.98%22%5D%3B%0A%09%098999254966766664384%20-%3E%20-4891499473505380123%09%09%20%5Bcolor%3D4%2C%0A%09%09%09fontcolor%3D4%2C%0A%09%09%09pos%3D%22e%2C545.24%2C243.9%20341.35%2C84.88%20367.75%2C95.593%20394.73%2C109.43%20417%2C126.95%20449.06%2C152.18%20437.96%2C176.65%20470%2C201.91%20489.55%2C217.32%20512.76%2C229.9%20%5C%0A535.99%2C240%22%5D%3B%0A%09%094362618074356267131%20-%3E%203675886290632349128%09%09%20%5Bcolor%3D4%2C%0A%09%09%09fontcolor%3D4%2C%0A%09%09%09pos%3D%22e%2C341.35%2C243.98%20548.92%2C84.2%20521.39%2C94.926%20493.23%2C108.94%20470%2C126.95%20437.76%2C151.95%20449.06%2C176.68%20417%2C201.91%20397.34%2C217.38%20374.01%2C229.97%20%5C%0A350.65%2C240.08%22%5D%3B%0A%09%7D%0A%09subgraph%20cluster_legend%20%7B%0A%09%09graph%20%5Bbb%3D%22887%2C359.84%2C1227%2C435.84%22%2C%0A%09%09%09label%3D%22Next%20State%20Actions%22%2C%0A%09%09%09lheight%3D0.21%2C%0A%09%09%09lp%3D%221057%2C424.34%22%2C%0A%09%09%09lwidth%3D1.43%2C%0A%09%09%09style%3Dsolid%0A%09%09%5D%3B%0A%09%09node%20%5Bcolorscheme%3Dpaired12%2C%0A%09%09%09labeljust%3Dl%2C%0A%09%09%09shape%3Drecord%2C%0A%09%09%09style%3Dfilled%0A%09%09%5D%3B%0A%09%09AcquireLock%09%09%20%5Bcolorscheme%3Dpaired12%2C%0A%09%09%09fillcolor%3D3%2C%0A%09%09%09height%3D0.51389%2C%0A%09%09%09label%3DAcquireLock%2C%0A%09%09%09labeljust%3Dl%2C%0A%09%09%09pos%3D%221175%2C386.34%22%2C%0A%09%09%09rects%3D%221131%2C368.34%2C1219%2C404.34%22%2C%0A%09%09%09shape%3Drecord%2C%0A%09%09%09style%3Dfilled%2C%0A%09%09%09width%3D1.2222%5D%3B%0A%09%09BecomeVictim%09%09%20%5Bcolorscheme%3Dpaired12%2C%0A%09%09%09fillcolor%3D2%2C%0A%09%09%09height%3D0.51389%2C%0A%09%09%09label%3DBecomeVictim%2C%0A%09%09%09labeljust%3Dl%2C%0A%09%09%09pos%3D%221056%2C386.34%22%2C%0A%09%09%09rects%3D%221006%2C368.34%2C1106%2C404.34%22%2C%0A%09%09%09shape%3Drecord%2C%0A%09%09%09style%3Dfilled%2C%0A%09%09%09width%3D1.3889%5D%3B%0A%09%09ReleaseLock%09%09%20%5Bcolorscheme%3Dpaired12%2C%0A%09%09%09fillcolor%3D4%2C%0A%09%09%09height%3D0.51389%2C%0A%09%09%09label%3DReleaseLock%2C%0A%09%09%09labeljust%3Dl%2C%0A%09%09%09pos%3D%22938%2C386.34%22%2C%0A%09%09%09rects%3D%22895%2C368.34%2C981%2C404.34%22%2C%0A%09%09%09shape%3Drecord%2C%0A%09%09%09style%3Dfilled%2C%0A%09%09%09width%3D1.1944%5D%3B%0A%09%7D%0A%7D%0A

Option to set rendering engine?

The Viz library supports multiple rendering engines (circo, dot, fdp, neato, osage, twopi), but I'm unsure of how to specify which one to use with GraphvizOnline. I'm assuming that it defaults to "dot".

Is there a way to specify the rendering engine used?

Please add a license file to this repo

Thank you for making this project available! It's very helpful for quickly and interactively debugging Graphviz files.

I have a minor request about making the project license more explicit in the GitHub repo.

The README.md says:

Licence

BSD

but since there's no explicit LICENSE file in this repo, GitHub does not automatically mark it as BSD.

Also, there are multiple types of the BSD license, e.g.,

Could you please select the specific license and place a full copy of the license text into a LICENSE file in the repo? Thank you!

Interactive display

Hi,

I find this app to be extremely useful. Thanks for that!

I do wonder if there's a plan to support interactive display of small-to-medium graphs, as the default layout is frequently not that I prefer.

Thanks!
Steve

Enable resizing of panels?

Hi and thanks for this great graphviz viewer. I really like that I can share graphs by simply sharing a url.

The only thing I'm missing is that you cannot resize the panels; I would like to be able to shrink the textbox on the left (if not even hide it completely). Do you think that would be possible?

Share a graph

Happy using your service, have a feature request: a button to share a link to the graph. The button may store a text in the get parameter optionally followed by some URL shortener.

Option to download SVG?

Hey there,

I'd love to have the ability to download the generated files. I'm happy to make a PR if someone could point me in the right direction!

Specify the engine via the url

I generate graphs that should be rendered by neato. My current workflow is to generate the smart url corresponding to my graph and then clicking on the engine button to set neato. If once could specify the engine through the url directly, it would make my process faster.

Thanks for the useful work, by the way!

neato different output comparing graphvizonline to graphviz native

I'm probably doing something dumb, but I can't see it...

I expected that for same dot file, i'd get similar spaced graphs using online grapher to that of native grapher.

But I don't.

Same graphviz being used

GraphvizOnline: Generated by graphviz version 2.40.1 (20161225.0304)
graphviz native: Generated by graphviz version 2.40.1 (20161225.0304)

I can supply svg samples, but how would that help?

GraphvizOnline sample
image

Graphviz native sample
image

Source file

digraph "Type Approval Process"{
sep=0.3
overlap=false
S [shape=square, label="Supplier", style=filled, fillcolor=orange];
TfNSW [shape=square, label="TfNSW", style=filled, fillcolor=orange];
Project [shape=square, label="Project\nor\nagency", style=filled, fillcolor=orange];
AMB [shape=square, label="AMB", style=filled, fillcolor=orange];
AssStd [shape=oval, label="Assess\nstandard\ncompliance", style=filled, fillcolor=yellow];
AssSpec [shape=oval, label="Assess\nspecification\ncompliance", style=filled, fillcolor=yellow];
DevSpec [shape=oval, label="Develop\nspecification", style=filled, fillcolor=yellow];
PubSpec [shape=oval, label="Publish\nspecification", style=filled, fillcolor=yellow];
PubTA [shape=oval, label="Publish\ntype\napproval", style=filled, fillcolor=yellow];
ReqCon [shape=oval, label="Request\nconcession", style=filled, fillcolor=yellow];
STDs [shape=cylinder, label="TfNSW\nStandards", style=filled, fillcolor=cyan];
Spec [shape=cylinder, label="Project\nspecification", style=filled, fillcolor=cyan];
DraftSpec [shape=cylinder, label="Draft\nspecification", style=filled, fillcolor=cyan];
NCSpec [shape=cylinder, label="Non-compliant\nspecification", style=filled, fillcolor=cyan];
StdComply [shape=cylinder, label="Standard\ncompliance", style=filled, fillcolor=cyan];
TA [shape=cylinder, label="Type\napproved\nproduct", style=filled, fillcolor=cyan];
Notice [shape=cylinder, label="Concession\nnotice", style=filled, fillcolor=cyan];
RfC [shape=cylinder, label="Request for\nconcession", style=filled, fillcolor=cyan];
S -> AssStd [xlen=4, color=grey, fontcolor=grey, label="Product\nspec"];
AssStd -> StdComply [xlen=4, color=grey, fontcolor=grey];
StdComply -> AssSpec [xlen=4, color=grey, fontcolor=grey];
STDs -> AssStd [xlen=4, color=grey, fontcolor=grey];
AssSpec -> TA [xlen=4, color=grey, fontcolor=grey];
TA -> PubTA [xlen=4, color=grey, fontcolor=grey];
PubTA -> TfNSW [xlen=4, color=grey, fontcolor=grey, label="www"];
Project -> DevSpec [xlen=4, color=grey, fontcolor=grey];
DevSpec -> DraftSpec [xlen=4, color=grey, fontcolor=grey];
DraftSpec -> PubSpec [xlen=4, color=grey, fontcolor=grey];
PubSpec -> Spec [xlen=4, color=grey, fontcolor=grey];
Spec -> AssSpec [xlen=4, color=grey, fontcolor=grey];
STDs -> DevSpec [xlen=4, color=grey, fontcolor=grey];
DevSpec -> NCSpec [xlen=4, color=grey, fontcolor=grey];
NCSpec -> ReqCon [xlen=4, color=grey, fontcolor=grey];
ReqCon -> RfC [xlen=4, color=grey, fontcolor=grey];
RfC -> AMB [xlen=4, color=grey, fontcolor=grey];
AMB -> Notice [xlen=4, color=grey, fontcolor=grey];
Notice -> PubSpec [xlen=4, color=grey, fontcolor=grey];
}

Top & Bottom (portrait) display

I have a second monitor in vertical (portrait) orientation. Would it be possible to display the text editor on top and the graph below when the aspect ratio is portrait not landscape? This is not ideal:

image

Great app btw :)

syntax error on valid file

digraph G {

overlap=false

subgraph cluster_0 {
   color=blue;

   lic_backend
   suricata_backend
   users_backend
   uefi
}

uefi [label="UEFI\nИли\n/var/opt/rnd.dat"]
lic_backend [label="License backend"]
lic_srv [label="License server\n(Hetzner)"]
suricata_srv  [label="Сервер обновлений\nSuricata"]
uefi -> lic_backend [label=" HWID    "]
bro [label="WEB-интерфейс"]

suricata_backend -> lic_backend [label="Caps    \nusage    "]
users_backend -> lic_backend [label="Caps    \nusage    "]
lic_backend -> suricata_backend  [label="Allowed caps,    \nHWID    "]
lic_backend -> users_backend   [label="Allowed caps,    \nHWID    "]



lic_backend -> lic_srv [label="HW ident   "]
lic_srv -> lic_backend [label="Signed KEY   \n(JWT/JWS)   "]

suricata_backend -> suricata_srv  [label="HWID    "]
suricata_srv -> suricata_backend [label="Пак обновлений    "]

suricata_srv -> lic_srv  [label="HW ident   "]
lic_srv -> suricata_srv [label="Allowed/Denied   "]

lic_backend -> bro [label="Status   "]
bro -> lic_backend [label="* Обнови ключ   \n* Upload key    \n* Обратиться в ТП    "]


 crm -> lic_srv [label="Лицензии   "]
 crm -> portal [label="обмен   "]
 portal -> crm [label="обмен   "]
 
 
}

ACHTUNG! please note psvg -- it's not my node!

image

support larger graphs

abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value 16777216,
(2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations,
(3) set Module.TOTAL_MEMORY to a higher value before the program runs,
or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ").
Build with -s ASSERTIONS=1 for more info.```

cluster is not displayed

digraph G {
    edge [comment="Wildcard node added automatic in EG."];
    node [comment="Wildcard node added automatic in EG."];
    subgraph "clucv_0" {
        label="asdf";
        edge [comment="Wildcard node added automatic in EG."];
        node [comment="Wildcard node added automatic in EG."];
        a;
    }
}

spec

subgraph : [ subgraph [ ID ] ] '{' stmt_list '}'
An ID is one of the following:
any double-quoted string ("...") possibly containing escaped quotes ('")

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.