Vindaar / TimepixAnalysis

Contains code related to calibration and analysis of Timepix based detector + CAST related code
MIT License
19 stars 6 forks source link

[TODO] add static and interactive plotting frontends using Karax #34

Closed Vindaar closed 5 years ago

Vindaar commented 5 years ago

Still heavily work in progress.

This will close issue #31 when it's finished.

It will consist of a rewrite of plotData, which is mainly based on:

From there we can do 2 things:

  1. dump the SVGs and Plotly JsonNodes of the created plots to a file, which we read at compile time of a "static" karax frontend. This has no external dependency (like H5 file etc.) and can be run in any browser
  2. a dynamic karax frontend, which is aware of the PlotKind enum and the PlotDescriptor object, as well as the contents of the config.toml. This allows a user interface for the creation of a desired plot via maybe some dropdown menus or something else.. This creates a PlotDescriptor internally, sends it to the backend, which will create the appropriate plot and send the result back to the frontend, which will show it immediately. This JS tool will store all plots in one (or two) tables / JsonNodes as to cache plots.

So far it's in a pure prototyping stage, figuring out how to build what I want in HTML + JS etc. The rewrite of plotData is necessary for the interactive front end, because otherwise we can't build the plotData code in a gcsafe way.

edit: Merged early, many points still remain a work in progress. Although many features are built, a lot is still missing or broken.

Vindaar commented 5 years ago

Merging now, because karaPlot has gotten a little out of hand. Further features will be added and everything will be refined. But there is no point in keeping this PR as such, if many important changes for the rest of the code base only happen in here.