Skip to content

Conversation

@M-Lampert
Copy link
Contributor

@M-Lampert M-Lampert commented Oct 13, 2025

Updates the visualisation module with the following changes and improvements:

  • Divide visualisation logic into preprocessing (classes that inherit from PathPyPlot) and visualisation (classes that inherit from PlotBackend).
  • Improve runtime efficiency: Plotting a graph with 1000 nodes and 50 000 edges now runs in 5.56s using the matplotlib backend compared to 33.2s before.
  • Fix tikz-backend and add conversion to .svg files
  • Fix config handling: All visualisation config options in the pathpyG.toml-file work now with all backends.
  • Add the possibility to provide coordinates and image links to the d3js-backend.
  • Improve manim animations
  • Add temporal network layouting
  • Simplify layout-code: Use networkx-layout implementations since the previous implementation was basically just copied from networkx
  • Update documentation
    • Improve code reference: Provide more details including example visualisations
    • Update Tutorials so that the visualisations look reasonable
    • Update overview at docs/reference/pathpyG/visualisations/index.md
    • Update docs/plot_tutorial.md
  • Add unit-tests to push the test coverage to 87% 🎉
    • Add LaTeX and speed up GitHub workflow setup for visualisation dependencies
    • Fix existing tests
    • add new tests

@M-Lampert M-Lampert marked this pull request as ready for review October 20, 2025 14:52
@M-Lampert M-Lampert requested a review from hackl October 20, 2025 14:52
@IngoScholtes
Copy link
Member

Incredible work, thank you Moritz!

@IngoScholtes IngoScholtes merged commit 09466c6 into main Oct 29, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants