#graphviz — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #graphviz, aggregated by home.social.
-
With larger graph sizes it can even look pretty!
(Thanks to #graphviz neato ✨) -
I recently more often view generated SVGs in #Emacs
- build system task dependency graph like https://codeberg.org/harald/pythonbuilder#dependency-graph-of-pythonbuilder-s-build
- class dependency graph for a TypeScript project generated from https://github.com/PSeitz/ts-dependency-graphIn both cases it would be great if clicking on a node would result in some emacs command being called.
Any ideas?
-
Silly question for the static webpage people here…
I want to put together a documentation webpage for a system that a few of us have developed. This isn't API documentation, but rather end-user documentation. Some of it will discuss deployment instructions, but there'll be a lot of diagrams and screenshots. I'll host a copy of it, but it will probably also get shipped with the application.
For source-code documentation, I quite like using Doxygen, since it can integrate well with `graphviz` and `mscgen`. `graphviz` is good for showing state transition diagrams, and `mscgen` is great for displaying how messages are passed between systems.
It's good being able to define the diagram *in the text* and have a diagram generated in its place. Makes things a lot easier to maintain.
Doxygen though doesn't work so well without source code. That's 99% of what it does, parse source code for docstrings and format them.
At work I had a similar situation, my employer had chosen to use Hugo, and I needed `graphviz`, the kludge taken there was to use client-side JavaScript to render the diagram. I'd like to avoid that here.
Is there a static website generator out there that can take a block of text in my markdown, and use `graphviz`/`mscgen` to place a diagram in its place?
-
Книга в Markdown: Автоматическая сборка статического сайта mdBook и файла DOCX с оформлением по ГОСТ
Текст книг, учебных пособий, научно-технических статей, документации, дипломных и курсовых работ часто набирается и редактируется в WYSIWYG-редакторе, таком как Microsoft Word, в том числе вследствие того, что издательства и организации требуют от авторов оформленный по ГОСТ или внутренним стандартам docx-документ. Процесс работы в Microsoft Word и аналогичных редакторах не лишён недостатков: docx-файлы трудно версионировать в git, а для объединения нескольких документов в один придётся перенумеровывать источники, рисунки, таблицы, формулы. Альтернативой docx является LaTeX. Однако работа со стилями в LaTeX простотой и минималистичным синтаксисом не отличается , причём издательства от использования формата docx отказываться не торопятся. А инструменты в духе typst отличаются нестандартным синтаксисом языка для описания документов, причём возможность генерации сайтов в typst имеет пометку «in preview». Markdown — популярный и удобный язык разметки, но это также и очень ограниченный формат. Поэтому задача написания в Markdown сложной технической документации по ГОСТ, научной статьи с автоматической настройкой оформления для заданного издательства или хорошо оформленного онлайн-учебника может показаться неосуществимой. В этой статье рассмотрим способ работы над научно-техническими статьями и книгами в формате Markdown на основе подхода Docs as Code с учётом строгих ограничений на оформление, используемый Петром Советовым @true-grue и мной при подготовке учебных материалов в РТУ МИРЭА. Способ заключается в применении утилиты pandoc для построения дерева абстрактного синтаксиса (AST) Markdown-документа с последующим переписыванием AST набором фильтров на Lua и трансляцией AST в форматы docx и pdf, соответствующие ГОСТ, а также в диалект markdown, совместимый с mdBook , для генерации онлайн-учебника в виде статического сайта. Исходный код книги , написанной с использованием описанного в статье подхода, опубликован на GitHub.
https://habr.com/ru/articles/987982/
#pandoc #markdown #lua #python #документирование #гост #docx #graphviz #mdbook #github
-
Книга в Markdown: Автоматическая сборка статического сайта mdBook и файла DOCX с оформлением по ГОСТ
Текст книг, учебных пособий, научно-технических статей, документации, дипломных и курсовых работ часто набирается и редактируется в WYSIWYG-редакторе, таком как Microsoft Word, в том числе вследствие того, что издательства и организации требуют от авторов оформленный по ГОСТ или внутренним стандартам docx-документ. Процесс работы в Microsoft Word и аналогичных редакторах не лишён недостатков: docx-файлы трудно версионировать в git, а для объединения нескольких документов в один придётся перенумеровывать источники, рисунки, таблицы, формулы. Альтернативой docx является LaTeX. Однако работа со стилями в LaTeX простотой и минималистичным синтаксисом не отличается , причём издательства от использования формата docx отказываться не торопятся. А инструменты в духе typst отличаются нестандартным синтаксисом языка для описания документов, причём возможность генерации сайтов в typst имеет пометку «in preview». Markdown — популярный и удобный язык разметки, но это также и очень ограниченный формат. Поэтому задача написания в Markdown сложной технической документации по ГОСТ, научной статьи с автоматической настройкой оформления для заданного издательства или хорошо оформленного онлайн-учебника может показаться неосуществимой. В этой статье рассмотрим способ работы над научно-техническими статьями и книгами в формате Markdown на основе подхода Docs as Code с учётом строгих ограничений на оформление, используемый Петром Советовым @true-grue и мной при подготовке учебных материалов в РТУ МИРЭА. Способ заключается в применении утилиты pandoc для построения дерева абстрактного синтаксиса (AST) Markdown-документа с последующим переписыванием AST набором фильтров на Lua и трансляцией AST в форматы docx и pdf, соответствующие ГОСТ, а также в диалект markdown, совместимый с mdBook , для генерации онлайн-учебника в виде статического сайта. Исходный код книги , написанной с использованием описанного в статье подхода, опубликован на GitHub.
https://habr.com/ru/articles/987982/
#pandoc #markdown #lua #python #документирование #гост #docx #graphviz #mdbook #github
-
Книга в Markdown: Автоматическая сборка статического сайта mdBook и файла DOCX с оформлением по ГОСТ
Текст книг, учебных пособий, научно-технических статей, документации, дипломных и курсовых работ часто набирается и редактируется в WYSIWYG-редакторе, таком как Microsoft Word, в том числе вследствие того, что издательства и организации требуют от авторов оформленный по ГОСТ или внутренним стандартам docx-документ. Процесс работы в Microsoft Word и аналогичных редакторах не лишён недостатков: docx-файлы трудно версионировать в git, а для объединения нескольких документов в один придётся перенумеровывать источники, рисунки, таблицы, формулы. Альтернативой docx является LaTeX. Однако работа со стилями в LaTeX простотой и минималистичным синтаксисом не отличается , причём издательства от использования формата docx отказываться не торопятся. А инструменты в духе typst отличаются нестандартным синтаксисом языка для описания документов, причём возможность генерации сайтов в typst имеет пометку «in preview». Markdown — популярный и удобный язык разметки, но это также и очень ограниченный формат. Поэтому задача написания в Markdown сложной технической документации по ГОСТ, научной статьи с автоматической настройкой оформления для заданного издательства или хорошо оформленного онлайн-учебника может показаться неосуществимой. В этой статье рассмотрим способ работы над научно-техническими статьями и книгами в формате Markdown на основе подхода Docs as Code с учётом строгих ограничений на оформление, используемый Петром Советовым @true-grue и мной при подготовке учебных материалов в РТУ МИРЭА. Способ заключается в применении утилиты pandoc для построения дерева абстрактного синтаксиса (AST) Markdown-документа с последующим переписыванием AST набором фильтров на Lua и трансляцией AST в форматы docx и pdf, соответствующие ГОСТ, а также в диалект markdown, совместимый с mdBook , для генерации онлайн-учебника в виде статического сайта. Исходный код книги , написанной с использованием описанного в статье подхода, опубликован на GitHub.
https://habr.com/ru/articles/987982/
#pandoc #markdown #lua #python #документирование #гост #docx #graphviz #mdbook #github
-
Книга в Markdown: Автоматическая сборка статического сайта mdBook и файла DOCX с оформлением по ГОСТ
Текст книг, учебных пособий, научно-технических статей, документации, дипломных и курсовых работ часто набирается и редактируется в WYSIWYG-редакторе, таком как Microsoft Word, в том числе вследствие того, что издательства и организации требуют от авторов оформленный по ГОСТ или внутренним стандартам docx-документ. Процесс работы в Microsoft Word и аналогичных редакторах не лишён недостатков: docx-файлы трудно версионировать в git, а для объединения нескольких документов в один придётся перенумеровывать источники, рисунки, таблицы, формулы. Альтернативой docx является LaTeX. Однако работа со стилями в LaTeX простотой и минималистичным синтаксисом не отличается , причём издательства от использования формата docx отказываться не торопятся. А инструменты в духе typst отличаются нестандартным синтаксисом языка для описания документов, причём возможность генерации сайтов в typst имеет пометку «in preview». Markdown — популярный и удобный язык разметки, но это также и очень ограниченный формат. Поэтому задача написания в Markdown сложной технической документации по ГОСТ, научной статьи с автоматической настройкой оформления для заданного издательства или хорошо оформленного онлайн-учебника может показаться неосуществимой. В этой статье рассмотрим способ работы над научно-техническими статьями и книгами в формате Markdown на основе подхода Docs as Code с учётом строгих ограничений на оформление, используемый Петром Советовым @true-grue и мной при подготовке учебных материалов в РТУ МИРЭА. Способ заключается в применении утилиты pandoc для построения дерева абстрактного синтаксиса (AST) Markdown-документа с последующим переписыванием AST набором фильтров на Lua и трансляцией AST в форматы docx и pdf, соответствующие ГОСТ, а также в диалект markdown, совместимый с mdBook , для генерации онлайн-учебника в виде статического сайта. Исходный код книги , написанной с использованием описанного в статье подхода, опубликован на GitHub.
https://habr.com/ru/articles/987982/
#pandoc #markdown #lua #python #документирование #гост #docx #graphviz #mdbook #github
-
Having the freedom to chose my work environment on the computer, I move more and more tasks to Emacs recently, like running terminal windows with https://codeberg.org/harald/terminal-frame . Another pet of mine is my python build system: https://codeberg.org/harald/pythonbuilder
The latter can produce a nice SVG graph, using #graphviz, of the dependency tree of the build setup.
And should I forget which targets the build has, it is just a C-x C-f dependencies.svg away to see that graph.😀
-
CW: AoC day 11: Reactor
On day 11, both parts were quite simple: counting paths required a DFS with cache.
On part 2, the cache was different… unless one had an epiphany to solve it using part 1 because the input graph was a Direct-Acyclic-Graph: therefore ensuring one of fft->dac or dac->fft would have no paths; the solution would be paths(svr->fft)×paths(fft->dac)×paths(dac->out).
Yet I did not think of this, and that's despite using the first minutes actually plotting the input:
-
Who needs #Graphviz when you can wrestle with #JavaScript and summon the Graphviz gods yourself? 🕷️✨ Apparently, #reinventing #wheels is the new black, because why use a perfectly good tool when you can spend eons building something that might almost work! 🙃🔧
https://spidermonkey.dev/blog/2025/10/28/iongraph-web.html #programming #humor #HackerNews #ngated -
I can never remeber, but: "subgragh names start with 'cluster_'; subgraph names start with 'cluster_'; subgraph names..."
-
#Graphviz oneliner (save the downloaded .dot locally if you use this!)
DEPTH=5 WIKI="commonswiki" PAGE="File:The_Bug_Peek.jpg" curl "https://vcat.toolforge.org/render?wiki=$WIKI&title=$PAGE&depth=$DEPTH&limit=100000&format=gv&links=wiki" | dijkstra ROOT0 | gvpr -c 'BEG_G {concentrate="true"; mclimit=100; label=""; flow="back"; Defcolor="black"; nodesep=0.04; ranksep=0.1} E {arrowhead="none"; penwidth=0.2} N {shape="point"; width=degree/10.0} N [$.name == "ROOT0"] {width=3.0} N [$.dist == 1.0] {color=sprintf("%f+0.8+1", rand())}' | dot | gvcolor | dot -Tsvg -o out.svg
-
I put the javascript code up for converting dot files into an ascii graph. I decided to name the method/algorithm "Greedy Grabber, Right Lane Backtracker"
https://codeberg.org/random-wizard/ascii-graphalizer
It is not as elegant as how standard dot, or neato graphs work. From tinkering with it, it seems to work well, visually, when the nodes have a lot of hierarchical structure with a small to moderate amount of cycles.
Also, I can not help myself, but javascript is a really inelegant programming language in my opinion. The ... shallow copy feels like a hack. const feels like it was tacked on. Lack of strong typing. The lack of immutability constructs is something that leads to... very easy to shoot yourself in the foot when writing code. The automatic semi-colon insertion logic can easily get you when you are not paying attention (or even if the code is going to get put through a minifier).
-
Working on a little documentation for ascii graphalizer. Using graphviz examples.
https://graphviz.org/Gallery/neato/process.html
That simple dot file results in pic 1. When run through ascii graphalizer, it results in pic 2.
Demo of ascii graphalizer
https://random-wizard.neocities.org/ascii-graphalizer/ -
Graphviz – kuten arvelinkin – tarjosi ratkaisun. Neato-algoritmillä graafin attribuuteiksi overlap=vpsc, overlap_scaling=0. Jokainen kansallispuisto fixedsize=true, shape=ellipse, overlap=false ja pos-attribuutti oikeaan kohtaan. Sitten kaikkien solmujen väliin jänteet laskennallisilla pituuksilla (n-1)² ja algoritmi näytti hoitavan homman. Koordinaatistomuunnos on "tyhmä" (asteet suoraan tuumiksi) mutta tällä nyt mennään ensin.
#graphviz #kansallispuistot -
This cool trick (some would call it "dirty hack" 🙂) by @plantarum can be used for #dot/#graphviz, as well:
(defun my-babel-execute-maybe ()
(interactive)
(org-mode)
(org-babel-execute-maybe)
(org-display-inline-images)
(normal-mode))E.g. imagine this comment or doc string:
/*
#+BEGIN_SRC dot :file myfunction.svg :cmdline -Kdot -Tsvg
digraph {
a -> b;
}
#+END_SRC
*/ -
I'm still using graphviz/dot to make infrastructure diagrams. It works pretty well but I think is showing its age, doesn't seem too well maintained and has some limitations.
So what are the cool kids using for this nowadays? I really don't want to use a graphical tool though - I want to write a simple text format and put it in version control.
-
New release for GruPHst v0.16.0 a rust in-memory graph database.
Now with Graphviz export!
https://github.com/carvilsi/gruphst?tab=readme-ov-file#graphviz
#rust #GraphDatabase #inMemoryDatabase #persistence #rustLibrary #graphviz #dataViz
-
New release for GruPHst v0.16.0 a rust in-memory graph database.
Now with Graphviz export!
https://github.com/carvilsi/gruphst?tab=readme-ov-file#graphviz
#rust #GraphDatabase #inMemoryDatabase #persistence #rustLibrary #graphviz #dataViz
-
New release for GruPHst v0.16.0 a rust in-memory graph database.
Now with Graphviz export!
https://github.com/carvilsi/gruphst?tab=readme-ov-file#graphviz
#rust #GraphDatabase #inMemoryDatabase #persistence #rustLibrary #graphviz #dataViz
-
Technically, we can perform this #upgrade across all the environments in parallel, or in any order we choose. At least that’s what the #dependency #graph says. (Thank you #graphviz!)
Organizationally, it would be a terrible idea. There are well-established #reasons for keeping #production last in the list. They would not fit within the approximately one-third of a toot I have remaining.
Tune in next week for another episode of “Can versus Should.”
-
All new files my old `btrfs` filesystem creates are above 32-bit inode space:
$ touch a && stat '-c%i' a
11833717710Very occasionally I build 32-bit `i686-linux` packages. Sometimes they fail to run against file with so large inodes.
Two casualties today:
- `doxygen`: https://github.com/doxygen/doxygen/pull/11518
- `graphviz`: https://gitlab.com/graphviz/graphviz/-/merge_requests/4269 -
All new files my old `btrfs` filesystem creates are above 32-bit inode space:
$ touch a && stat '-c%i' a
11833717710Very occasionally I build 32-bit `i686-linux` packages. Sometimes they fail to run against file with so large inodes.
Two casualties today:
- `doxygen`: https://github.com/doxygen/doxygen/pull/11518
- `graphviz`: https://gitlab.com/graphviz/graphviz/-/merge_requests/4269 -
All new files my old `btrfs` filesystem creates are above 32-bit inode space:
$ touch a && stat '-c%i' a
11833717710Very occasionally I build 32-bit `i686-linux` packages. Sometimes they fail to run against file with so large inodes.
Two casualties today:
- `doxygen`: https://github.com/doxygen/doxygen/pull/11518
- `graphviz`: https://gitlab.com/graphviz/graphviz/-/merge_requests/4269 -
All new files my old `btrfs` filesystem creates are above 32-bit inode space:
$ touch a && stat '-c%i' a
11833717710Very occasionally I build 32-bit `i686-linux` packages. Sometimes they fail to run against file with so large inodes.
Two casualties today:
- `doxygen`: https://github.com/doxygen/doxygen/pull/11518
- `graphviz`: https://gitlab.com/graphviz/graphviz/-/merge_requests/4269 -
All new files my old `btrfs` filesystem creates are above 32-bit inode space:
$ touch a && stat '-c%i' a
11833717710Very occasionally I build 32-bit `i686-linux` packages. Sometimes they fail to run against file with so large inodes.
Two casualties today:
- `doxygen`: https://github.com/doxygen/doxygen/pull/11518
- `graphviz`: https://gitlab.com/graphviz/graphviz/-/merge_requests/4269 -
Seems Graphviz creates graphs in 3D. Not too readable when everything is a mess for my dead simple graph. Fortunately there's only about 6500 properties to go through one by one to check. Not too impressed.
-
Seems Graphviz creates graphs in 3D. Not too readable when everything is a mess for my dead simple graph. Fortunately there's only about 6500 properties to go through one by one to check. Not too impressed.
-
Seems Graphviz creates graphs in 3D. Not too readable when everything is a mess for my dead simple graph. Fortunately there's only about 6500 properties to go through one by one to check. Not too impressed.
-
Seems Graphviz creates graphs in 3D. Not too readable when everything is a mess for my dead simple graph. Fortunately there's only about 6500 properties to go through one by one to check. Not too impressed.
-
Seems Graphviz creates graphs in 3D. Not too readable when everything is a mess for my dead simple graph. Fortunately there's only about 6500 properties to go through one by one to check. Not too impressed.
-
-
The interactive calculation sheet for #engineering, based on #emacs, #orgmode, #texlatex and #sympy is available in English [1], although the blog article is in German [2]. The template is also in English [3].
#Orgmode is so impressive, you could use #maxima, #octave, #gnuplot, #graphviz and almost 40 other languages with all their libraries right out of the box [4].
Have fun!
[1] https://vennemann-online.de/flossblog/downloads/eng.pdf
[2] https://vennemann-online.de/flossblog/post20250208_pencilandpaper.html
[3] https://vennemann-online.de/flossblog/downloads/org_eng.zip
[4] https://orgmode.org/worg/org-contrib/babel/languages/index.html -
I think my #professional #accomplishment for the day was resisting the #temptation to use Slavic #expletives to label undesirable end states in a #graphviz diagram of a process.
To the best of my knowledge, I am between zero and negligible percent Slavic, inclusive.
-
Un très sympathique plugin maven générant un graphe de dépendance visuel (et filtrable) d'un projet maven aux formats GraphML, dot, ou PlantUML https://github.com/ferstl/depgraph-maven-plugin #maven #plugin #dépendances #graph #générateur #plantuml #graphviz
-
Create water system diagrams with GraphViz #water #engineerig #graphviz
-
Техникум: Как Проинициализировать Микроконтроллер [часть 2]
Программа это реализация алгоритма. А алгоритм это упорядоченная последовательность действий. Поэтому очень большое значение имеет правильный порядок исполнения программы. В этом тексте я написал как автоматически выявить правильную последовательность инициализации
https://habr.com/ru/articles/830964/
#init #graphviz #tsort #sort #компиляторы #cygwin #uniq #GNU_make #dot #cpp
-
Техникум: Как Проинициализировать Микроконтроллер [часть 2]
Программа это реализация алгоритма. А алгоритм это упорядоченная последовательность действий. Поэтому очень большое значение имеет правильный порядок исполнения программы. В этом тексте я написал как автоматически выявить правильную последовательность инициализации
https://habr.com/ru/articles/830964/
#init #graphviz #tsort #sort #компиляторы #cygwin #uniq #GNU_make #dot #cpp
-
Техникум: Как Проинициализировать Микроконтроллер [часть 2]
Программа это реализация алгоритма. А алгоритм это упорядоченная последовательность действий. Поэтому очень большое значение имеет правильный порядок исполнения программы. В этом тексте я написал как автоматически выявить правильную последовательность инициализации
https://habr.com/ru/articles/830964/
#init #graphviz #tsort #sort #компиляторы #cygwin #uniq #GNU_make #dot #cpp
-
Решатель Игры Set на Микроконтроллере
Существует одна остроумная настольная игра, называется Set. Это игра на внимание. В этом тексте я показал, как я сконструировал автоматический решатель, чтобы всегда выигрывать в игру Set!
https://habr.com/ru/articles/827128/
#set #дополненная_реальность #datamatrix #graphviz #set_game #игра_сет #qrкоды #микроконтроллеры #GM67 #ATStartf437
-
Решатель Игры Set на Микроконтроллере
Существует одна остроумная настольная игра, называется Set. Это игра на внимание. В этом тексте я показал, как я сконструировал автоматический решатель, чтобы всегда выигрывать в игру Set!
https://habr.com/ru/articles/827128/
#set #дополненная_реальность #datamatrix #graphviz #set_game #игра_сет #qrкоды #микроконтроллеры #GM67 #ATStartf437