nicolaskruchten / pivottable

Open-source Javascript Pivot Table (aka Pivot Grid, Pivot Chart, Cross-Tab) implementation with drag'n'drop.
https://pivottable.js.org/
MIT License
4.35k stars 1.08k forks source link

PivotUI with Comparison for multiple input-data #1275

Open Gykonik opened 3 years ago

Gykonik commented 3 years ago

Hey, also from me many thanks for the great library and the excelent support!

I have managed to display data in the pivot table.

Now I am interested in comparing two data sets. So, for example, one has two input arrays (same type, same structure, different data). Now in the pivot table I want to display in the data cells for a special aggregator (so NOT multi-aggregator, as so often asked :D) e.g. the value of input1 on the left and input2 on the right. Is this somehow possible or how would I have to proceed for this? You can see an example in the image attached. For example, the left value is the one from input1 and the right from input2

I was thinking if this is somehow possible similar to the HeatMap, that I somehow add this afterwards. I would be hugely appreciative of an answer. Thanks!

Unbenannt
nicolaskruchten commented 3 years ago

It sounds like you could concatenate the data sets and add a field to differentiate them, and then map that differentiation-field to the column area, so you'd have the two side by side.

Gykonik commented 3 years ago

Thanks for the answer! If I understand this right, I would basically end up having a new "dragable" box (in the pvtHorizList-container) e.g. called Input, where I have two values either 1 (for input 1) or 2 (for input 2)? Or did I get you wrong?

nicolaskruchten commented 3 years ago

That's about what I was suggesting, yes :)

Gykonik commented 3 years ago

Sounds like an excelent idea - thanks man! Additionally, I could add another value 3 (or something similar) which stores each value from field 1 / each value from field 2 - couldn't I? (I mean, this would be a huge data-overload, but is there a simpler solution without having to create custom aggs or similar?