Skip to content

Releases: miranov25/RootInteractive

v0-01-11

27 Nov 09:46
Compare
Choose a tag to compare

Last Release with the Bokeh 2.x.y

  • Last Release Before Transitioning to Bokeh 3.x.y
  • Please note that the upcoming release will not be backward compatible.

What's Changed

  • Development version development for the Domain-Specific Language with a fraction of the desired functionality (details below)
    • Next Release Goals:
    • M:N joins
    • Lossy compression/decompression
    • Enhanced user-friendliness through integration with the ROOT team

Details:

  • Various client side lazy evaluation optimizations and bugfix by @pl0xz0rz in #336
  • RDataFrame interface binary search, fix for BoolOp by @pl0xz0rz in #337
  • Error handling for custom variables by @pl0xz0rz in #339
  • Rolling window statistics - so far only sum, mean and std by @pl0xz0rz in #340
  • Rolling median builtin for domain specific language with RDataFrame by @pl0xz0rz in #342
  • RDataFrame rolling quantile by @pl0xz0rz in #343
  • Optimization for simple joins on client by @pl0xz0rz in #344
  • Removed uproot dependency by @pl0xz0rz in #347

Full Changelog: v1-01-10...v0-01-11

v0-01-10

22 Sep 10:50
Compare
Choose a tag to compare
v0-01-10 Pre-release
Pre-release

List of the most important changes

  • For detailed description of the recent changes , see the description in the CHEP conference:

  • Templated parameterized functions (see details in proceedings above)

    • The generation of configuration arrays, in particular figureArray, histogramArray, aliasArray, layout, widgetLay- out and parameterArray, together contribute to the construction and creation of interactive visualisations and provide a streamlined approach to the complex display and analysis of
      data.
  • mutliselect for the histograms ( array of histograms could be defined by user on the client)

  • Experimental Domain-specific language for RDataFrame code generation (Numpy,Python like syntax & joins)

  • Adding automatic description tables and documentation /tab (for variable description)

  • Better error handling

  • Optimization of compression

  • Optimization of machine learning RandoForest - fully parallelizing PredictStat

What's Changed

Full Changelog: v0-01-09...v0-01-10

v0-01-09 - preparation for new tutorial

06 Dec 19:48
Compare
Choose a tag to compare

What's Changed

  • NaN handling in histograms, simplified compression insterface by @pl0xz0rz in #282
  • Automatically add base64 to arrayCompression, fix for parsing call with more than 1 parameter #283 by @pl0xz0rz in #284
  • Compression tutorial by @pl0xz0rz in #285

Full Changelog: v0-01-08...v0-01-09

v0-01-08 - 2D user defined parameterized axis transforms (e.g for rotation, function normalization)

01 Dec 21:53
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0-01-07...v0-01-08

v0-01-07 - release

12 Nov 10:30
Compare
Choose a tag to compare

What's Changed

  • Parameterized (Anonymous) custom JS expressions/function on client (binary and unary operation, numpy functions, comparators) by @pl0xz0rz in #249
  • Unbinned mean, standard deviation and quantile for histogram projections by @pl0xz0rz in #250
  • Heatmap tuple interface by @pl0xz0rz in #251
  • Asymmetric error bars by @pl0xz0rz in #252
  • Spinner range fix (for #250) by @pl0xz0rz in #253
  • Less verbose aliasArray interface by @pl0xz0rz in #255
  • Cumulative histogram by @pl0xz0rz in #258
  • Y-Axis transforms (#254, #247) by @pl0xz0rz in #256
  • X axis transform by @pl0xz0rz in #260
  • Spinner ranges formatting and step size --> #259 by @pl0xz0rz in #264
  • Custom user defined function freezing bugfix in function dependencies (for #265) by @pl0xz0rz in #266
  • Technical fix enabling using constants as an alias + optimization for aliases by @pl0xz0rz in #267
  • Optimized bokehDrawSA by removing dead code (factor ~ 2) by @pl0xz0rz in #268
  • Minor histogram tutorial update and enabling spinnerRange for controlling aliases by @pl0xz0rz in #270

Full Changelog: v0-01-06...v0-01-07

Release v0-01-06

05 Sep 10:17
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v-01-05...v0-01-06

Description

In the last months after the tutorial, Marian & Marian have implemented many improvements in RootInteractive:

  • extended functionality
    • parameterization of the spinner RANGE
      • used for multiscale selection using text or exponential spinner
    • histogram parametrization (nBins, ranges)
    • user defined function
      • used e.g to define selection for the data and reference data as custom javascript
        return tpcNCl>120 & ITSrefit
    • Bitmasks (And, OR) logic
    • Templates/dictionaries for graphics parameterisation
    • Acceleration
    • Documentation

Many of these new features have already been used in the recent TPC data volume studies and TrackCombinator studies:

Furthermore, we have opted for better documentation and not only used Python's online documentation, but also provided documents for each parameter as README files:

In the readme file we refer to the test_py files as an example and also to current realistic use cases.
We plan to make a new release today. If you have time, give us your feedback. We plan to release it before the OFFLINE meeting.

The documentation still needs many improvements, which will be included in the next release.
In the near future, next Release, we would like to focus on the new RDataFrame <-> awkward interface recently released in the scikit-hep, to further speed up the preparation of input data.

The ONNX interface for machine learning functions on the client (for parameter variation) is on the wish list, but I hope we will also converge on this for next Release

v-01-05 Release

10 Jul 19:19
Compare
Choose a tag to compare

What's Changed

  • Merge master to ErrPDF by @miranov25 in #165
  • Added regular expressions to select subset of variables to histoTable by @pl0xz0rz in #195
  • Err pdf by @miranov25 in #197
  • Adding more documentation to bokehDraw standalone tutorials by @ehellbar in #198
  • TextAreaInput widget fix by @pl0xz0rz in #202
  • Adding parameters (widgets) for the legend visibility and number of points for renderer by @pl0xz0rz in #203
  • Fixed error handling of nonexisting columns by @pl0xz0rz in #208
  • Optimized the MultiSelect widget selection caching results by @pl0xz0rz in #212
  • Multiselect bitmask by @pl0xz0rz in #214
  • Widgets in layoutDesc can be specified also by names (before only index could be used) by @pl0xz0rz in #215
  • MakeJSCallback index slider, performance optimizations by @pl0xz0rz in #220

This is prerelease

Significant speed-up of the histogram was achieved by bug fixes and finally by the option to select only a subset of the data. Further improvement of CPU consumption under preparation #221 for the next release

Full Changelog: v0-01-04...v-01-05

v0-01-04 - release - adding dependency trees

20 Feb 14:33
Compare
Choose a tag to compare

Pull request and issues solved:

#169 - bug fixes needed by previous pull request
#172 - Reduced widget description verbosity for select widgets
#177, #178 - enabling parallel pytest, regression test, export results to json output for later analysis using jq
#175 - client-side joins
#186 - Dependency graphs on server, refactoring, parameters can change X and Y axes, some bugfixes

#186 Dependency graphs on server, refactoring, parameters can change X and Y axes

This PR refactors a lot of the code, and fixes some bugs. The PR is not complete, as joins on the client are missing, as is putting tooltips on the dependency tree.

Relates to #180 (dependency trees are created as Python dictionaries, and checked for cyclic dependencies), #156 (parameters can now change X and Y axes, legend field and error bars)

New features:
The "source" option in figureArray in bokehDrawArray - sets the source to use for drawing, so that using a different data source from the main one is less verbose - also frees up using the dot for joins
Parameters can now swap the variable used for X and Y axes
Custom error bars for histograms

Bugfixes:
Fixed error bars being broken for sources other than the main one
...

Changes:
String parsing now uses Python parsing, should be smarter e.g. when identifying whether an expression is a column or a floating point number

#175 - client-side joins

New parameter to bokehDrawArray - sourceArray
Outside of specifying histograms as in histoArray, it also allows specifying secondary data sources and joins on the client

Use case:

df2 = pd.DataFrame(...)
sourceArray = [
  {"name": "df2", "data": df2},
  {"name": "join_df2", "left": None, "right":"df2", "left_on": ["bin_index"], "right_on": ["bin_index"], "how": "left"}
]

#177, #178 - enabling parallel pytest, regression test, export results to json output for later analysis using jq

  • standard pytest too slow, parallel test reduce test time from O(15 min) to O(1 min)
  • Example usage:
  • source macor
Singularity> source $RootInteractive/tests/pytest.sh 
  init
  pathJQ          -> return expanded list of the keys
  makePyTest      -> make pytest store results and metadata  in json files
  uploadPyTest    -> upload test on the server
  • run make PyTest ad upload results on server
Singularity> makePyTest 
    makePyTest
    Parameters:
      1.) param  - testWorkers  - number of workers to test
      2.) param  - testName
      3.) param  - testPrefixServer
      4.) param  - testServer
    Example usage:
        makePyTest 6 test6 /lustre/alice/users/miranov/tests/RootInteractive alice

What's Changed

Full Changelog: v0.00.21...v0-01-04

v0-01-03-rev1 - Revision fixing warnings

18 Nov 18:39
b4f04b3
Compare
Choose a tag to compare

#170 - Warning fixes
#169 - Warnig+reducing output size assuming symmetric error for drawings (before upper and lower band sent)

v0-01-03 - functions on client and derived aggregated function

17 Nov 11:55
Compare
Choose a tag to compare

Updated tutorials:

graphics, histogramming and function on client:

Function on client

  • enabling derived varables e.g for cut selection
  • derived aggrgated variable .e.g for the effieciency /ratio, resplution ratio ...
  • #166

Bug fixes

  • Compression to proper data types - types not stored -> the same type in client/server