Skip to content

Interactive example gallery pages #856

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4 commits into from
Closed

Interactive example gallery pages #856

wants to merge 4 commits into from

Conversation

kandersolar
Copy link
Member

@kandersolar kandersolar commented Jan 12, 2020

  • I am familiar with the contributing guidelines
  • Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
  • Pull request is nearly complete and ready for detailed review.
  • Maintainer: Appropriate GitHub Labels and Milestone are assigned to the Pull Request and linked Issue.

Experimenting with embedding interactive bokeh-based pages in the example gallery. I'm using the bokeh-plot sphinx extension; I originally tried to use the bokeh-gallery sphinx extension but linking doesn't work correctly between the gallery index and example pages when combining it with sphinx-gallery... something to do with whether the index page expects to be in the same directory as the pages or not.

https://external-builds.readthedocs.io/html/pvlib-python/856/gallery/plot_single_axis_tracking.html#interactive-demo

@kandersolar
Copy link
Member Author

I know there's still some stickler issues but before I go too far, I wonder what folks think about this kind of interactive example? There are two in the PR docs now; one on SAT backtracking and another on generating IV curves.

I'm finding them less useful than I'd like because they are restricted to running only JS at runtime, meaning all pvlib calls have to be done up front. So for instance if we wanted to make an interactive IV curve generator like this one, we'd either have to code up the all the SDM math in JS (a non-starter) or generate every possible IV curve ahead of time and ship them all with the page so that they're available for display.

@mikofski
Copy link
Member

Sounds like too much work. Can it be static vs. interactive? Save it for another day? Sorry if I sent you on a wild goose chase

@cwhanse
Copy link
Member

cwhanse commented Jan 15, 2020

I'm a fan of PVEducation.org and I think that interactive content is valuable. In my view, the gallery is intended for scripts, notebooks etc. that illustrate use of pvlib-python. I'm not convinced that interactive content provided enough additional value to warrant the effort.

@kandersolar
Copy link
Member Author

Well, I wasn't trying to assert that there's no good application for interactivity in the pvlib docs. My question is more "given these limitations, does anyone have the imagination to see a good use case?"

I also wonder if publishing interactive examples is straying outside of pvlib's scope. For instance, is it pvlib's job to demonstrate what backtracking is and does, or just provide an implementation and link to a reference?

Can it be static vs. interactive?

Can you clarify this question? The bokeh plots could be generated without any interactivity, but at that point I don't see any benefit over just doing it with matplotlib.

a wild goose chase

No worries -- if nothing else, it's good to have an example of this sort of thing in case a good use case pops up in the future.

@mikofski
Copy link
Member

One option might be to leave it where it is, and just link to it from pvlib?

@wholmgren
Copy link
Member

Cool idea, but I'm worried about maintenance. I generally find bokeh to be a pain. But if you all are up to committing to maintaining it for the long run then we can consider.

@kandersolar
Copy link
Member Author

I think if nobody has an idea for it that really shines, I agree with @cwhanse and it's a better use of time to make more (static) examples. So I'd say let's close this PR and just keep the possibility in mind for the future.

Any interest in a PR for just the static portion of the IV curves example? I'll admit to having almost no experience with those functions, so no worries if it's not worth salvaging.

@cwhanse
Copy link
Member

cwhanse commented Jan 16, 2020

Any interest in a PR for just the static portion of the IV curves example?

Yes! @bmeyers

@bmeyers
Copy link

bmeyers commented Jan 16, 2020

Hi, yes, this certainly looks like it would be very helpful!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants