Plotting scientific graphs with Juce

Hi all,

Is it possible to produce scientific plots with Juce? I would like to produce scatter plots with multiple timeseries, error bars and labeled axes. My use case is to load some audio data into Audacity, do some processing, and produce some scientific output in the form of scientific plots. My plugin would have some parameter inputs / controls, and a plot canvas.

What’s the best way of tackling this?
I’m a complete beginner at audio plugins, but I have a strong background in scientific data analysis and can write C++ code.


Do you want the plugin to display this plot in its user interface or do you want to export these plots e.g. to a PDF? In the second case, you might want to have a look at sciplot which is a convenient C++ interface wrapper for gnuplot. We use it to automatically generate PDF plots for test failures in our DSP unit tests. It is however not really suited to display those plots in the plugin Editor.

Yes, the plan is to have the plots shown in the UI. I would also like to export to pdf, but the main aim is to have the UI show the plots. Real-time performance isn’t an issue, so I don’t need it to be super speedy. The user will select some audio, run the plugin and get the plots from the signal analysis. The plugin will have controls and inputs that feed parameters to the algorithm. The user will be able to change the processing parameters and either the plots update automatically or you press an ‘update’ button and the graphs are redrawn.

I should add, it’s not a music plugin. It’s a scientific application. Essentially a mini data analysis tool that pops up from audacity.

1 Like

I think this is exactly what I’m looking for.
Thanks for the suggestion.

1 Like