JuliaDB.jl icon indicating copy to clipboard operation
JuliaDB.jl copied to clipboard

WIP: add interactive recipe for OnlineStats plot

Open piever opened this issue 7 years ago • 6 comments
trafficstars

Still needs tests and docs and I need to allow the user to choose what statistics to run. Of course the layout should be worked on, not sure what option is best but am open to suggestions. Here the user can choose x axis, optionally y axis, whether they want to split the data and by which variables, whether they want to drop missing data and the number of partitions. Only plot button and number of partition slider cause the plot to update.

This takes a very small dependency (Widgets+Observables), and to use it the user needs to:

using Plots, Interact, JuliaDB
interactivepartition(t)

@joshday I may need some help as I don't know OnlineStats that much. Is there a list of statistics that it makes sense to use for this kind of plot? Do they all have a version with zero arguments (say Extrema())?

interactivepartition

piever avatar Jul 20 '18 13:07 piever

The partitionplot code needs some cleanup (see my stale PR https://github.com/JuliaComputing/JuliaDB.jl/pull/190). I haven't had time to look at it lately, but I may actually have the time today.

Note that partitionplot is meant to be an easier way of working with OnlineStats.Partition and OnlineStats.IndexedPartition, but there are some edge cases for which partitionplot makes things more difficult (why I need to clean things up).

The most useful stats to use with this are Extrema, Mean, Hist, and CountMap.

joshday avatar Jul 20 '18 13:07 joshday

Ok, let me know when the API of partitionplot stabilizes!

Otherwise, I could also do the GUI for OnlineStats.Partition (if it turns out to be useful for non-tabular data as well or is something you'd be interested in having in OnlineStats).

piever avatar Jul 20 '18 13:07 piever

Codecov Report

Merging #215 into master will decrease coverage by 0.88%. The diff coverage is 0%.

Impacted file tree graph

@@           Coverage Diff            @@
##           master   #215      +/-   ##
========================================
- Coverage   72.88%    72%   -0.89%     
========================================
  Files          19     20       +1     
  Lines        1309   1325      +16     
========================================
  Hits          954    954              
- Misses        355    371      +16
Impacted Files Coverage Δ
src/JuliaDB.jl 100% <ø> (ø) :arrow_up:
src/interactiverecipes.jl 0% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 79b9d1f...55c4b5c. Read the comment docs.

codecov-io avatar Jul 20 '18 14:07 codecov-io

This is cool! We should chip on it a bit more.

shashi avatar Nov 06 '18 04:11 shashi

I'm happy to update it as Interact changed quite a bit in the mean time but I was waiting for JuliaDB to update to 1.0 as latest Interact is not Julia 0.6 compatible

piever avatar Nov 06 '18 09:11 piever

Thanks to the rework in Widgets and InteractBase the @nodeps macro is no longer needed and there is overall less macro magic. There still seems to be some issues with the underlying plot recipes though, see #252

piever avatar Feb 17 '19 18:02 piever