Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] add blogpost about Makie showcase projects #21

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

SimonDanisch
Copy link
Member

No description provided.

@SimonDanisch
Copy link
Member Author

SimonDanisch commented Jan 22, 2025

Hi everyone,

Sorry to tag you all, but I’d love to regularly feature cool projects using Makie! 😊
This blog post is a very random selection of recent projects which caught my eye — going forward, we might set up a discord/slack/discourse channel to find more projects (I'll add details later to the post).

If possible, it would be amazing if you can add a brief description or further examples to your projects section.
Keep it short to keep the post concise, but if you’d like to share more, please contact me and we can also talk about publishing an in-depth post about the project!

Please answer at least these questions:

  • Exclude my project from the blog post.
  • I’ll contribute something within 1-2 weeks.
  • I’ll contribute but need more than 2 weeks.
  • I don’t have time at all, but you can write a summary for me.
  • Ping [name] to respond on my behalf.

Feel free to mute this thread—just drop a quick comment if you do, so I know who will stop replying!
If you want to contact me privately, please use Julia Slack, linkedin or discord.

Thank you all a lot for your great work! :)

Link to the current preview:
https://makie.org/previews/PR21/blogposts/showcases/

@Larbino1 @sally-00
@kbarros
@baggepinnen
@xavierr @moyner
@magnuask
@dgleich
@AntonOresten
@RGerzaguet
@fverdugo
@myersm0
@ztangent

@kbarros
Copy link

kbarros commented Jan 22, 2025

Great idea, thanks Simon!

@myersm0
Copy link

myersm0 commented Jan 22, 2025

hello Simon, I’ll contribute something within 1-2 weeks for my package ObservableCortex

@dgleich
Copy link

dgleich commented Jan 23, 2025

Thanks for this! Does this suffice for GraphPlayground or do you need something more extensive? If I have time, I might be able to upload another demo that shows off mouse pointer repulsion that's fun. (Although it isn't a graph...)

Sometimes the best way to understand data is to play around with it interactively. There is a lovely package in JavaScript to do this by Mike Bostock called d3. In particular, the d3-force library includes all sorts of fun demos. GraphPlayground.jl includes a port of the d3-force library to Julia to enable an interactive graph exploration tool in Makie (via GraphMakie.jl). It's capable of force calculations (attractions, repulsions, collisions) with tens of thousands of simple objects. I've used it to explore graphs of session conflicts at conferences as well as to generate layouts for small graphs. Given any undirected graph from Graphs.jl, using it is as simple as playground(g) to get an interactive window with labels, the ability to pin nodes, and the ability to export coordinates of the final layout.

@baggepinnen
Copy link

baggepinnen commented Jan 23, 2025

Cool, thanks for doing this! Here's a snippet for Multibody


Multibody.jl is a library of model components for ModelingToolkit, an equation-based modeling language. With Multibody.jl, the user can assemble dynamical models for simulation of mechanical systems, such as robots, cars, drive lines and aircraft, by connecting ready-made components such as rods, boxes, joints and wheels. The modeling-language is responsible for deriving the equations of motion of the assembled model, lifting this burden off the shoulders of the modeler. 3D mechanical modeling benefits greatly from being able to visualize the mechanical system, both during the model-building process and while analyzing the result of a simulation. The interactive features of Makie fits this bill perfectly, allowing the user to produce both animations and interactive renders of their model.

@magnuask
Copy link

Thank you for taking the initiative! For future requests related to EnergyModelsGUI.jl, @Zetison should be tagged as he is currently the main developer for the package.

Here is a snippet for EnergyModelsGUI.jl:

EnergyModelsGUI is a graphical interface built on top of the EnergyModelsX framework that utilizes Makie for interactive visualizations. It provides clear, intuitive depictions of multi-energy system topologies, input data, and results, making it much easier for users to verify that their system is correctly specified and to understand model outcomes. While it does not allow altering system setups or parameters, it serves as a powerful tool for checking configurations and exploring complex results.

@Larbino1
Copy link

Happy for you to use VMRobotControl.jl in your blog post. This is lifted from the docs:

VMRobotControl allows you to build dynamic controllers for your robot as intuitive virtual mechanisms. You design your controller by building a virtual mechanism. You connect the virtual mechanism to the robot through compliant elements (like springs and dampers). The control action is automatically translated to the robot actuators (desired joint forces/torques).

This package is designed for building, simulating and controlling robots using passivity-based controllers represented by virtual mechanisms. This is in the tradition of virtual model control and energy shaping/damping injection. For a defined robot geometry, you can select specific coordinates and connect components to shape the robot dynamic properties. properties. This provides a simple way to program complex robot behaviour incrementally, from mechanical primitives.

@ztangent
Copy link

This sounds like a great initiative! Thanks for featuring PDDLViz.jl. Here is a brief snippet about PDDLViz.jl and the surrounding PDDL.jl ecosystem:

PDDLViz.jl is a library for visualizing, animating, and interacting with AI planning domains specified in the Planning Domain Definition Language (PDDL).
PDDLViz.jl is part of the [JuliaPlanners ecosystem](https://github.com/JuliaPlanners), and operates on top of the [PDDL.jl](https://github.com/JuliaPlanners/PDDL.jl) interpreter and compiler for PDDL.
PDDLViz.jl also supports the animation and rendering of planning algorithms and solutions supported by the [SymbolicPlanners.jl](https://github.com/JuliaPlanners/SymbolicPlanners.jl) library.

@kbarros
Copy link

kbarros commented Jan 24, 2025

Thanks again! Here is our proposed blurb:

Sunny is a package for simulating atomic scale magnetism in real materials. It facilitates specification of a broad class of spin models and includes a diverse suite of numerical solvers. These include powerful methods for simulating spin dynamics both in and out of equilibrium. Uniquely, it generalizes the traditional dynamics of spin dipoles to a dynamics of SU(N) coherent states, which better captures local quantum mechanical effects. Sunny also offers a well-developed framework for calculating the dynamical spin structure factor, enabling direct comparison with scattering experiments. Ease of use is a priority, with Makie-powered GUI tools for interactive symmetry analysis and model visualization. [arXiv:2501.13095]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants