How can I translate the coordinates of a PNG render of a graph, to the coordinates I get from -Tjson or -Tjson0? For example, I have a PNG that's 167 x 251, but the .json file says the bounding box (bb) is 117 x 180. I need to be able to display a graph, click somewhere on the graph, and have Python respond with the node clicked, but I can't figure out this conversion.
Converting between pixels and graphviz sizes/coordinates
140 views Asked by PuzzleAndy At
1
There are 1 answers
Related Questions in GRAPHVIZ
- Troubleshooting graphviz install / python module
- Pass arguments to graphviz for pydot graph
- graphviz arrow, node, table - I'm looking for a solution to avoid a double arrow?
- How to center text in custom html-style GraphViz/DiagrammeR node?
- Generate data flow graph for ETL process
- DOT Layout Forcing Graph Into 2 Levels
- Place xlabel below node in DiagrammeR / Graphviz
- Python NetworkX graphviz layout - RuntimeWarning about gvplugin_pango.dll dependencies
- Graphviz enforce edge start and stop position
- Networkx uses graphviz_layout for layout drawing, edge disappeared
- Move 2 nodes to the side without affecting the rest of the layout
- Creating a .dot text file from list of libraries and their depths
- graphviz, show Inherited attributes of a class
- Improve performance on Networkx graphviz_layout for large volume of nodes and edges
- Is it possible to set the nodes and edges positions specified by user in Python Graphviz?
Related Questions in PYGRAPHVIZ
- Troubleshooting graphviz install / python module
- Improve performance on Networkx graphviz_layout for large volume of nodes and edges
- How to make bnlearn and dowhy compatible in jupyter notebook?
- IPython SVG renderer produces wrong text in VSCode on Windows
- PyInstaller: Unable to find '/usr/sbin/neato' when adding binary and data files
- Getting pygraphviz clusters to point at each other? (And render properly.)
- How do I uniformly scale edge distance based on weight with graphviz in Python?
- Graphviz unnecessarily long edges / distances between nodes
- Cannot install pygraphviz: fatal error C1083: Cannot open include file: 'graphviz/cgraph.h': No such file or directory
- Converting between pixels and graphviz sizes/coordinates
- samehead attibute in Graphviz python
- use graphviz can I make 2 blocks boundary. touch each others
- Create a graph in Python (with pygraphviz) when the number of nodes is huge
- How to make nodes overlap in Graphviz?
- pygraphviz installation error in Google Colab
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Graphviz uses "points" (pts) - 72/inch as the unit for pos and bb values (somewhere on this page -https://graphviz.org/doc/info/attrs.html- you will find this:
At present, most device-independent units are either inches or points, which we take as 72 points per inch.)Furthermore the default for output is set to 96 dpi (https://graphviz.org/docs/attrs/dpi/)
So bb dimensions /72 should equal png dimensions /96.
Almost, but not quite!
As a guess, the last bit needed to match the two sets of dimensions, is to factor in pad (https://graphviz.org/docs/attrs/pad/). Add 4 points (4/72 inches) to every Graphviz pos value and 8 points (8/72 to the bb total width & height)