Skip to content
/ datapane Public
forked from datapane/datapane

Datapane makes it simple to build shareable reports from Python.

License

Notifications You must be signed in to change notification settings

tig/datapane

 
 

Repository files navigation

Datapane

Datapane.com | Datapane Enterprise | Documentation | API Docs | Twitter | Blog

Pip Downloads Latest release Conda (channel only)

Datapane is a Python library which makes it simple to build reports from the common objects in your data analysis, such as pandas DataFrames, plots from Python visualisation libraries, and Markdown.

Reports can be exported as standalone HTML documents, with rich components which allow data to be explored and visualisations to be used interactively.

For example, if you wanted to create a report with a table viewer and an interactive plot:

import pandas as pd
import altair as alt
import datapane as dp

df = pd.read_csv('https://covid.ourworldindata.org/data/vaccinations/vaccinations-by-manufacturer.csv', parse_dates=['date'])
df = df.groupby(['vaccine', 'date'])['total_vaccinations'].sum().reset_index()

plot = alt.Chart(df).mark_area(opacity=0.4, stroke='black').encode(
    x='date:T',
    y=alt.Y('total_vaccinations:Q'),
    color=alt.Color('vaccine:N', scale=alt.Scale(scheme='set1')),
    tooltip='vaccine:N'
).interactive().properties(width='container')

total_df = df[df["date"] == df["date"].max()].sort_values("total_vaccinations", ascending=False).reset_index(drop=True)
total_styled = total_df.style.bar(subset=["total_vaccinations"], color='#5fba7d', vmax=total_df["total_vaccinations"].sum())

dp.Report("## Vaccination Report",
    dp.Plot(plot, caption="Vaccinations by manufacturer over time"),
    dp.Table(total_styled, caption="Current vaccination totals by manufacturer")
).save(path='report.html', open=True)

This would package a standalone HTML report such as the following, with a searchable DataTable and Plot component.

Report Example

Getting Started

Install

  • pip3 install datapane OR
  • conda install -c conda-forge "datapane>=0.10.0"

Next Steps

Datapane.com

In addition to saving reports locally, Datapane provides a free hosted platform and social network at https://datapane.com, including the following features:

  • published reports can kept private and securely shared,
  • reports can be shared publicly and become a part of the wider data stories community,
  • report embedding within your blogs, CMSs, and elsewhere (see here),
  • explorations and integrations, e.g. additional DataTable analysis features and GitHub action integration.

It's super simple, just login (see here) and call the publish function on your report,

r = dp.Report(dp.DataTable(df), dp.Plot(chart))
r.publish(name="2020 Stock Portfolio", open=True)

Enterprise

Datapane Enterprise provides automation and secure sharing of reports within in your organization.

  • Private report sharing within your organization and within groups, including external clients
  • Deploy Notebooks and scripts as automated, parameterised reports that can be run by your team interactively
  • Schedule reports to be generated and shared
  • Runs managed or on-prem
  • and more

Joining the community

Looking to get answers to questions or engage with us and the wider community? Check out our GitHub Discussions board.

Submit requests, issues, and bug reports on this GitHub repo.

We look forward to building an amazing open source community with you!

About

Datapane makes it simple to build shareable reports from Python.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 83.6%
  • Jupyter Notebook 15.3%
  • Other 1.1%