plotly.rs
imgui-java
plotly.rs | imgui-java | |
---|---|---|
7 | 5 | |
992 | 540 | |
3.1% | - | |
7.3 | 6.3 | |
17 days ago | 27 days ago | |
Rust | Java | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
plotly.rs
-
Lets-Plot: An open-source plotting library by JetBrains
That's odd. Are you sure this is not related to Jupyter? I use plotly.js via a Rust wrapper (https://github.com/igiagkiozis/plotly) and the performance seems ok when generating a static, interactive html. The wrapper language itself should be irrelevant here. Is it the same if you generate a static html-file?
While I can't speak for millions of data points, generating a gyroscope plot with x, y, z, where each gyro axis is 400k+ samples is fine performance wise. This is generating a static, interactive html. Zooming etc is fine on my M1 MacbookPro 13" - delay when zooming in this specific case is maybe 0.5secs. The html-file is 60mb+.
-
What dashboard UI tools does the Rust ecosystem have?
There is a port of plotly to Rust (https://github.com/igiagkiozis/plotly). I used to make plots in Python using the python bindings and pandas, but never used the Rust bindings. I imagine it could be very powerful when integrated with polars.
- Plotting library for lots of points
- What's are good plotting libraries?
- Plotly-rs v0.8.1 released - create advanced and interactive charts with Rust. Supports Wasm.
-
Data visualization in rust
Check out https://github.com/igiagkiozis/plotly
-
Blog Post: Builder Lite
We use this pattern extensively in plotly.rs, e.g.: here, with good success.
imgui-java
- Lets-Plot: An open-source plotting library by JetBrains
-
JavaFX 19 Released
So this makes me wonder: how common is desktop app development with Java these days? I imagine there is still a lot done for internal app, but is it still viable to ship Java apps to end users? How you handle JRE distribution in that case?
Anyway also wanna shout out Dear ImGui[0]. I've been using it recently to build an interactive UI to quite complicated networking code. So far it been great for manual testing and demos, and it's fairly low maintenance once running.
[0] https://github.com/SpaiR/imgui-java
- Basic ClickGUI
-
A go-to GUI library for Kotlin
If you aren't off-put by the Blender/Unity UI style, there's also ImGUI a possibility as it has some java bindings available.
-
GUI in LWJGL
If you want a library that has an active community and a lot of examples try out imgui (java port: https://github.com/SpaiR/imgui-java). It is a C based language but seems like the port are pretty close to the original api so you can follow not only the java docs but the c/c++ ones as well. There are a few game engines that utilizes imgui in the editor because it is lightweight, easy to extend, theme and use.
What are some alternatives?
rustymind - A driver, parser and real time plotter for NeuroSky MindWave EEG headset
LWJGL - LWJGL is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL, Vulkan, bgfx), audio (OpenAL, Opus), parallel computing (OpenCL, CUDA) and XR (OpenVR, LibOVR, OpenXR) applications.
graphest - A faithful graphing calculator
LWJGUI - Simple UI solution for LWJGL3
SciencePlots - Matplotlib styles for scientific plotting
Vulkan-Tutorial-Java - Vulkan tutorial by Alexander Overvoorde ported to Java
Plotly.jl - A Julia interface to the plot.ly plotting library and cloud services
darklaf - Darklaf - A themeable swing Look and Feel based on Darcula-Laf
lowcharts - Tool to draw low-resolution graphs in terminal
jnativehook - Global keyboard and mouse listeners for Java.
datashader - Quickly and accurately render even the largest data.
ImFrame - dear imgui + glfw framework