3 ms·
> I get an analysis that I like, but there isn't a good way to share it with others, so I end up just taking screenshots. What would be your preferable way of
by prometheon1 3y ago
> I get an analysis that I like, but there isn't a good way to share it with others, so I end up just taking screenshots.
What would be your preferable way of sharing your analysis with others?
- You can turn jupyter notebooks into pdfs directly in the jupyter UI.
- You can upload them to Gitlab/Github and share the link to the rendered result.
- You can upload them to Colab/Binder/Kaggle and let people play with the code themselves.
- You can turn jupyter notebooks into beautiful websites/documents with:
https://quarto.org/docs/tools/jupyter-lab.html https://quarto.org/docs/tools/jupyter-lab.html
- You can add jupyter notebooks to you docs using nbsphinx:
https://nbsphinx.readthedocs.io/en/0.9.1/ https://nbsphinx.readthedocs.io/en/0.9.1/
- You can turn jupyter notebooks into interactive web apps with voila:
https://github.com/voila-dashboards/voila https://github.com/voila-dashboards/voila
- You can turn jupyter notebooks into presentations with rise:
https://github.com/voila-dashboards/voila https://github.com/voila-dashboards/voila
- henrikgs 3y agoI'm guessing the las one should link here https://rise.readthedocs.io/en/stable/ https://rise.readthedocs.io/en/stable/ and not to voila two times?
- prometheon1 3y agoYou're right, thanks!
- Desustorm 3y agoTo add to this, shamelessly self-promoting, Notebooker (https://github.com/man-group/notebooker https://github.com/man-group/notebooker) is a neat way of scheduling your Jupyter notebooks as parametrisable reports whose results are presented in a little web GUI (either as static HTML, PDF, or as reveal.js slideshow renders)
- bippingchip 3y agoWhile I have no need for its online functionality and the SAAS part of plotly, I really do like plotly python + cufflinks [1]. It lets you make interactive plots in html/js format. Which means you can save the notebook as html, and while people won't be able to rerun the code, they can still zoom in on graphs, hover to see annotations etc, which is a really nice way to share the outcome of your work in a more accessible way. [1] https://github.com/santosjorge/cufflinks https://github.com/santosjorge/cufflinks
- pea 3y agoIf you're interested in an easier way to create reports using Python and Plotly/Pandas, you should check out our open-source library, Datapane: https://github.com/datapane/datapane https://github.com/datapane/datapane - you can create a standalone, redistributable HTML file in a few lines of Python.
- prometheon1 3y agoCufflinks seems to be stale, maybe it is not needed anymore to bind plotly and pandas? I don't think these options existed in 2021 when cufflinks was last updated: - Plotly can be used directly as pandas backend: https://plotly.com/python/pandas-backend/ https://plotly.com/python/pandas-backend/ - The plotly.express module makes it easy to create interactive plots in html/js format from pandas dataframes: https://plotly.com/python/plotly-express/#gallery https://plotly.com/python/plotly-express/#gallery
- mikepurvis 3y agoI think the ideal would be a link directly to the notebook which allows user-local editing/fiddling, with an option to fork the master copy and save it into their own workspace— basically the Github model. But it sounds from both your comment and the many sibling replies that there are a number of tools now directly addressing this space, so I should definitely re-evaluate what is available.
- prometheon1 3y agoDo you have an example of how this works with another tool/language? I don't know if I understood it correctly but maybe you could: - Upload your notebook to Github, then create a url with Binder (part of the jupyter ecosystem) directly to an editing/fiddling playground: https://mybinder.org/ https://mybinder.org/ - If by user-local you mean on their own machine, they can clone your repo and run their own jupyterlab to fiddle - If everything should stay on your own computer/server, you could share a link to your own jupyterlab and collaborate with others in real-time: https://jupyterlab-realtime-collaboration.readthedocs.io/en/latest/ https://jupyterlab-realtime-collaboration.readthedocs.io/en/... (doing this securely might be a bit of a hassle)