Contributing App Example: Exploding Pivot Charts

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: GitHub - mmowers/superpivot

Thanks!

Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you'd prefer to maintain things in your own repo, it would be something we'd be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses "range" directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to `examples/apps` can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a "working/busy" message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

···

On Dec 26, 2016, at 12:32 AM, Matt Mowers <[email protected]> wrote:

First off, thanks so much for making Bokeh!

I'm wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel's pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here's the repo: GitHub - mmowers/superpivot

Thanks!

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Thanks much Bryan!

I’ll get started on compatibility with Python 3, and then I’ll open the github issue.

The more improvements/suggestions the better- I’ve introduced a few hacks (e.g. using html ids like classes) that I’m sure could be done more robustly, and the code structure/organization could certainly be improved.

I’m hoping this app could be useful for visualizing any pivotable data, perhaps even for non-technical users through the web. One feature that would help would be an upload widget for uploading a csv file on the webpage. Do you know if this is possible or in the works?

The working/busy message would be very helpful for this app’s UX.

Thanks again!

-Matt

···

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:

Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you’d prefer to maintain things in your own repo, it would be something we’d be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses “range” directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to examples/apps can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a “working/busy” message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

On Dec 26, 2016, at 12:32 AM, Matt Mowers [email protected] wrote:

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: https://github.com/mmowers/superpivot

Thanks!


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Brian,

I’ve made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: New App Example: Exploding Pivot Charts · Issue #5640 · bokeh/bokeh · GitHub.

Should I label/categorize the issue in any way?

Thanks again!

-Matt

···

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:

Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you’d prefer to maintain things in your own repo, it would be something we’d be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses “range” directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to examples/apps can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a “working/busy” message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

On Dec 26, 2016, at 12:32 AM, Matt Mowers [email protected] wrote:

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: https://github.com/mmowers/superpivot

Thanks!


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

I am going to take another look at this soon, FYI, just need to get this release out the door monday...

Bryan

···

On Jan 4, 2017, at 4:30 PM, Matt Mowers <[email protected]> wrote:

Hi Brian,

I've made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: Issues · bokeh/bokeh · GitHub.

Should I label/categorize the issue in any way?

Thanks again!
-Matt

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:
Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you'd prefer to maintain things in your own repo, it would be something we'd be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses "range" directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to `examples/apps` can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a "working/busy" message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

> On Dec 26, 2016, at 12:32 AM, Matt Mowers <[email protected]> wrote:
>
> First off, thanks so much for making Bokeh!
>
> I'm wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel's pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.
>
> Here's the repo: GitHub - mmowers/superpivot
>
> Thanks!
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> To post to this group, send email to bo...@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io\.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/ef77e013-ad2e-483c-b775-1bd76f0d6b5f%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Thanks Bryan, sounds good!

···

On Friday, January 6, 2017 at 1:54:41 PM UTC-6, Bryan Van de ven wrote:

I am going to take another look at this soon, FYI, just need to get this release out the door monday…

Bryan

On Jan 4, 2017, at 4:30 PM, Matt Mowers [email protected] wrote:

Hi Brian,

I’ve made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: https://github.com/bokeh/bokeh/issues/5640.

Should I label/categorize the issue in any way?

Thanks again!

-Matt

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:

Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you’d prefer to maintain things in your own repo, it would be something we’d be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses “range” directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to examples/apps can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a “working/busy” message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

On Dec 26, 2016, at 12:32 AM, Matt Mowers [email protected] wrote:

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: https://github.com/mmowers/superpivot

Thanks!


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/ef77e013-ad2e-483c-b775-1bd76f0d6b5f%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Matt, Bryan,

I’m working on building an interface for an academic group, and the superpivot example seems very relevant. I can’t get it to run, however, as the gams and gdxcc libraries imported in the gdxl/init.py are missing, and I can’t find suitable distributions of them for python3.

Please advise.

Thanks,

Morton

···

On Friday, January 6, 2017 at 9:09:47 PM UTC-5, Matt Mowers wrote:

Thanks Bryan, sounds good!

On Friday, January 6, 2017 at 1:54:41 PM UTC-6, Bryan Van de ven wrote:

I am going to take another look at this soon, FYI, just need to get this release out the door monday…

Bryan

On Jan 4, 2017, at 4:30 PM, Matt Mowers [email protected] wrote:

Hi Brian,

I’ve made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: https://github.com/bokeh/bokeh/issues/5640.

Should I label/categorize the issue in any way?

Thanks again!

-Matt

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:

Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you’d prefer to maintain things in your own repo, it would be something we’d be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses “range” directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to examples/apps can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a “working/busy” message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

On Dec 26, 2016, at 12:32 AM, Matt Mowers [email protected] wrote:

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: https://github.com/mmowers/superpivot

Thanks!


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/ef77e013-ad2e-483c-b775-1bd76f0d6b5f%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

Hi Morton,

I am not sure the problem you are seeing is actually directly related to the example. The only two non-Bokeh, non-stlib imports that superpivot makes are:

  import pandas as pd
  import six.moves.urllib.parse as urlp

Neither the example nor Bokeh have any exotic dependencies (Bokeh does not even depend on Pandas). I don't actually know what gams or gdxl are, I certainly have never installed them but have been able run the demo. Perhaps you can post an actual stack trace and that will shed some light on what's really going on.

Thanks,

Bryan

···

On Aug 9, 2017, at 10:43, [email protected] wrote:

Hi Matt, Bryan,

I'm working on building an interface for an academic group, and the superpivot example seems very relevant. I can't get it to run, however, as the gams and gdxcc libraries imported in the gdxl/__init__.py are missing, and I can't find suitable distributions of them for python3.

Please advise.

Thanks,

Morton

On Friday, January 6, 2017 at 9:09:47 PM UTC-5, Matt Mowers wrote:
Thanks Bryan, sounds good!

On Friday, January 6, 2017 at 1:54:41 PM UTC-6, Bryan Van de ven wrote:
I am going to take another look at this soon, FYI, just need to get this release out the door monday...

Bryan

> On Jan 4, 2017, at 4:30 PM, Matt Mowers <[email protected]> wrote:
>
> Hi Brian,
>
> I've made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: Issues · bokeh/bokeh · GitHub.
>
> Should I label/categorize the issue in any way?
>
> Thanks again!
> -Matt
>
> On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:
> Hi Matt,
>
> Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you'd prefer to maintain things in your own repo, it would be something we'd be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses "range" directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to `examples/apps` can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a "working/busy" message that front ends could use to disable controls and visually show that work is happening during longer operations.
>
> Thanks for the interest in helping the project!
>
> Bryan
>
>
> > On Dec 26, 2016, at 12:32 AM, Matt Mowers <[email protected]> wrote:
> >
> > First off, thanks so much for making Bokeh!
> >
> > I'm wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel's pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.
> >
> > Here's the repo: GitHub - mmowers/superpivot
> >
> > Thanks!
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> > To post to this group, send email to bo...@continuum.io.
> > To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io\.
> > For more options, visit https://groups.google.com/a/continuum.io/d/optout\.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> To post to this group, send email to bo...@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/ef77e013-ad2e-483c-b775-1bd76f0d6b5f%40continuum.io\.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/e8df5df7-65b8-43f2-8aec-195343c0bbaf%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

Thanks Bryan,

My error was using the code from Matt’s page rather than from the examples within bokeh. Got it to work and very excited to build off it.

Best,

Morton

···

On Wednesday, August 9, 2017 at 11:52:23 AM UTC-4, Bryan Van de ven wrote:

Hi Morton,

I am not sure the problem you are seeing is actually directly related to the example. The only two non-Bokeh, non-stlib imports that superpivot makes are:

    import pandas as pd

    import six.moves.urllib.parse as urlp

Neither the example nor Bokeh have any exotic dependencies (Bokeh does not even depend on Pandas). I don’t actually know what gams or gdxl are, I certainly have never installed them but have been able run the demo. Perhaps you can post an actual stack trace and that will shed some light on what’s really going on.

Thanks,

Bryan

On Aug 9, 2017, at 10:43, [email protected] wrote:

Hi Matt, Bryan,

I’m working on building an interface for an academic group, and the superpivot example seems very relevant. I can’t get it to run, however, as the gams and gdxcc libraries imported in the gdxl/init.py are missing, and I can’t find suitable distributions of them for python3.

Please advise.

Thanks,

Morton

On Friday, January 6, 2017 at 9:09:47 PM UTC-5, Matt Mowers wrote:

Thanks Bryan, sounds good!

On Friday, January 6, 2017 at 1:54:41 PM UTC-6, Bryan Van de ven wrote:

I am going to take another look at this soon, FYI, just need to get this release out the door monday…

Bryan

On Jan 4, 2017, at 4:30 PM, Matt Mowers [email protected] wrote:

Hi Brian,

I’ve made the app compatible with Python 3, refactored a little, added a couple features, and created a github issue: https://github.com/bokeh/bokeh/issues/5640.

Should I label/categorize the issue in any way?

Thanks again!
-Matt

On Tuesday, December 27, 2016 at 4:05:33 PM UTC-6, Bryan Van de ven wrote:
Hi Matt,

Wow, at a first glance this looks awesome. I think could make a great contribution! (Or if you’d prefer to maintain things in your own repo, it would be something we’d be happy to show off/demonstrate/point people to.) As a first quick suggestion, I think a few changes would make it run under python 3 (e.g. it uses “range” directly in some places, etc.) This would be a simple but good first step, as all the examples we provide need to run under both. Then, if you are interested in contributing it to examples/apps can you open a GH issue to discuss it? There might be a few other improvements to make, and also this app might help clarify and motivate some improvements that can be made to the server itself e.g. a “working/busy” message that front ends could use to disable controls and visually show that work is happening during longer operations.

Thanks for the interest in helping the project!

Bryan

On Dec 26, 2016, at 12:32 AM, Matt Mowers [email protected] wrote:

First off, thanks so much for making Bokeh!

I’m wondering how I might contribute a Bokeh app example (if you think it would make a good contribution). The app creates pivot charts from data, similar to Excel’s pivot chart functionality, but with the additional ability to explode into multiple filterable charts. I started from Bokeh/examples/app/crossfilter, but most of the current code is new. The app is fully functional, but the code could certainly be cleaner and more robust.

Here’s the repo: https://github.com/mmowers/superpivot

Thanks!


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/eed32e74-94ee-4e67-958c-a696f18172ea%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/ef77e013-ad2e-483c-b775-1bd76f0d6b5f%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.


You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].

To post to this group, send email to [email protected].

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/e8df5df7-65b8-43f2-8aec-195343c0bbaf%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.