panel

Panel: The powerful data exploration & web app framework for Python

https://github.com/holoviz/panel

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    7 of 192 committers (3.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.7%) to scientific vocabulary

Keywords

bokeh control-panels dashboards dataapp datascience dataviz gui holoviews holoviz hvplot jupyter matplotlib panel plotly

Keywords from Contributors

alignment flexible closember parallel distributed parallel-computing notebooks astronomy qt astropy
Last synced: 6 months ago · JSON representation

Repository

Panel: The powerful data exploration & web app framework for Python

Basic Info
  • Host: GitHub
  • Owner: holoviz
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: main
  • Homepage: https://panel.holoviz.org
  • Size: 116 MB
Statistics
  • Stars: 5,406
  • Watchers: 61
  • Forks: 551
  • Open Issues: 1,130
  • Releases: 86
Topics
bokeh control-panels dashboards dataapp datascience dataviz gui holoviews holoviz hvplot jupyter matplotlib panel plotly
Created over 7 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing Funding License Code of conduct

README.md

Panel logo -- text is white in dark theme and black in light theme

Panel: The powerful data exploration & web app framework for Python

Panel is an open-source Python library that lets you easily build powerful tools, dashboards and complex applications entirely in Python. It has a batteries-included philosophy, putting the PyData ecosystem, powerful data tables and much more at your fingertips. High-level reactive APIs and lower-level callback based APIs ensure you can quickly build exploratory applications, but you aren't limited if you build complex, multi-page apps with rich interactivity. Panel is a member of the HoloViz ecosystem, your gateway into a connected ecosystem of data exploration tools.


Enjoying Panel? Show your support with a Github star — it’s a simple click that means the world to us and helps others discover it too! ⭐️


Downloads PyPi Downloads Conda Downloads
Build Status Linux/MacOS Build Status
Coverage codecov
Latest dev release Github tag dev-site
Latest release Github release PyPI version panel version conda-forge version defaults version
Docs gh-pages site site
Notebooks dev-site
Support Discourse Discord

Home | Installation instructions | Getting Started Guide | Reference Guides | Examples | License | Support

Panel works with the tools you know and love

Panel makes it easy to combine widgets, plots, tables and other viewable Python objects into custom analysis tools, applications, and dashboards.

Panel NYC Taxi Linked Brushing


Panel works really well with the visualization tools you already know and love like Altair/ Vega, Bokeh, Datashader, Deck.gl/ pydeck, Echarts/ pyecharts, Folium, HoloViews, hvPlot, plotnine, Matplotlib, Plotly, PyVista/ VTK, Seaborn and more. Panel also works with the ipywidgets ecosystem.

Pythons DataViz works with Panel

Panel provides bi-directional communication making it possible to react to clicks, selections, hover etc. events.

Vega Selections

You can develop in Jupyter Notebooks as well as editors like VS Code, PyCharm or Spyder.

Panel provides a unique combination of deployment options. You can share your data and models as - a web application running on the [Tornado](https://www.tornadoweb.org/en/stable/) (default), [Flask](https://flask.palletsprojects.com/), [Django](https://www.djangoproject.com/) or [Fast API](https://fastapi.tiangolo.com/) web server. - a stand alone client side application powered by [Pyodide](https://pyodide.org/en/stable/) or [PyScript](https://pyscript.net/) via [`panel convert`](https://panel.holoviz.org/how_to/wasm/convert.html). - an interactive Jupyter notebook component. - a static `.html` web page, a `.gif` video, a `.png` image and more. Panel has something to offer for every one *from beginner to data pro*. ## Panel is a member of the HoloViz ecosystem Panel is a member of the ambitious [HoloViz](https://holoviz.org/) dataviz ecosystem and has first class support for the other members like [hvPlot](https://hvplot.holoviz.org) (simple .hvplot plotting api), [HoloViews](https://holoviews.org/) (powerful plotting api), and [Datashader](https://datashader.org/) (big data viz). Panel is built on top of [Param](https://param.holoviz.org). Param enables you to annotate your code with parameter ranges, documentation, and dependencies between parameters and code. With this approach, - you don't ever have to commit to whether your code will be used in a notebook, a data app, in batch processing, or reports. - you will write less code and be able to develop large, maintainable code bases! ## Mini getting-started Head over to the [getting started guide](https://panel.holoviz.org/getting_started/index.html) for more! ### Installation Instructions Panel can be installed on Linux, Windows, or Mac with ``conda``: ```bash conda install panel ``` or with ``pip``: ```bash pip install panel ``` See the [Environments](#environments) section below for additional instructions for your environment. ### Interactive data apps Bring your data or model ```python def model(n=5): return "⭐"*n ``` Bind it to a Panel *widget* and *lay it out*. ```python import panel as pn pn.extension() slider = pn.widgets.IntSlider(value=5, start=1, end=5) interactive_model = pn.bind(model, n=slider) layout = pn.Column(slider, interactive_model) ``` ![Panel Notebook Example](https://assets.holoviz.org/panel/readme/notebook.gif) For deployment on a web server wrap it in a nice template. ```python pn.template.FastListTemplate( site="Panel", title="Example", main=[layout], ).servable() ``` Start the server with ```bash panel serve name_of_script.py --show ``` or ```bash panel serve name_of_notebook.ipynb --show ``` ![Panel Example App](https://assets.holoviz.org/panel/readme/example_app.gif) ## Examples [![Panel Gallery](https://assets.holoviz.org/panel/readme/gallery.jpg)](https://panel.holoviz.org/gallery/index.html) [![Panel Chat Examples](https://assets.holoviz.org/panel/readme/panel-chat-examples.jpg)](https://holoviz-topics.github.io/panel-chat-examples/) [![Awesome Panel Gallery](https://assets.holoviz.org/panel/readme/awesome_panel.jpg)](https://www.awesome-panel.org) [![HoloViz Examples Gallery](https://assets.holoviz.org/panel/readme/holoviz_examples.jpg)](https://examples.holoviz.org) ## Get started Develop applications in your favorite notebook or editor environment, including Jupyter(Lab) notebooks, VSCode, Google Colab and many more, [see our getting started guide](https://panel.holoviz.org/getting_started/installation.html#developing-in-different-editors) for more details. ## Support & Feedback - Usage questions and showcases -> [HoloViz Community](https://holoviz.org/community.html) - Bug reports and feature requests -> [Github](https://github.com/holoviz/panel) - Developer discussions -> [Discord](https://discord.gg/rb6gPXbdAr) For more detail check out the [HoloViz Community Guide](https://holoviz.org/community.html). ## Contributing ❤️ Check out the [Contributing Guide](CONTRIBUTING.MD). ## License Panel is completely free and open-source. It is licensed under the [BSD 3-Clause License](https://opensource.org/licenses/BSD-3-Clause). ## Sponsors The Panel project is also very grateful for the sponsorship by the organizations and companies below:
Anaconda Logo Blackstone Logo NumFOCUS Logo Quansight Logo

Owner

  • Name: HoloViz
  • Login: holoviz
  • Kind: organization

High-level tools to simplify visualization in Python

Committers

Last synced: 10 months ago

All Time
  • Total Commits: 4,570
  • Total Committers: 192
  • Avg Commits per committer: 23.802
  • Development Distribution Score (DDS): 0.356
Past Year
  • Commits: 686
  • Committers: 42
  • Avg Commits per committer: 16.333
  • Development Distribution Score (DDS): 0.481
Top Committers
Name Email Commits
Philipp Rudiger p****r@a****m 2,941
Marc Skov Madsen m****n@g****m 323
Simon Høxbro Hansen s****n@m****m 277
Maxime Liquet 3****t 181
Andrew 1****1 174
dependabot[bot] 4****] 80
xavArtley x****1@g****m 73
James A. Bednar j****r 58
Coderambling 1****g 26
Christoph Deil D****h@g****m 25
Chris B c****l 22
Jean-Luc Stevens j****s@g****m 19
Demetris Roumis r****d@g****m 18
Julia Signell j****l@g****m 17
Mateusz Paprocki m****p@g****m 13
Jerry Wu j****y@y****e 9
thuydotm t****9@g****m 9
Jon Mease j****e@g****m 8
pre-commit-ci[bot] 6****] 8
Arne a****l@h****m 7
Hugues-Yanis Amanieu h****u@g****m 6
Theom 4****n 5
Simon s****w@g****t 5
Dheepak Krishnamurthy 1****k 5
Alexey Sukharevich s****h@k****m 5
sdc50 s****0@b****t 5
Marc Skov Madsen m****a@o****k 5
Philipp Rudiger p****r@a****m 5
kbowen k****0@g****m 4
TBym 1****m 4
and 162 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 1,599
  • Total pull requests: 2,167
  • Average time to close issues: 6 months
  • Average time to close pull requests: 11 days
  • Total issue authors: 460
  • Total pull request authors: 95
  • Average comments per issue: 1.88
  • Average comments per pull request: 1.6
  • Merged pull requests: 1,803
  • Bot issues: 0
  • Bot pull requests: 85
Past Year
  • Issues: 387
  • Pull requests: 926
  • Average time to close issues: 16 days
  • Average time to close pull requests: 3 days
  • Issue authors: 162
  • Pull request authors: 38
  • Average comments per issue: 0.7
  • Average comments per pull request: 1.04
  • Merged pull requests: 768
  • Bot issues: 0
  • Bot pull requests: 50
Top Authors
Issue Authors
  • MarcSkovMadsen (382)
  • ahuang11 (147)
  • maximlt (56)
  • cdeil (44)
  • Coderambling (42)
  • TheoMathurin (22)
  • philippjfr (21)
  • hoxbro (15)
  • droumis (14)
  • singharpit94 (14)
  • mayonnaisecolouredbenz7 (14)
  • Hoxbro (12)
  • xavArtley (11)
  • andhuang-CLGX (10)
  • hyamanieu (10)
Pull Request Authors
  • philippjfr (957)
  • ahuang11 (245)
  • MarcSkovMadsen (232)
  • hoxbro (188)
  • maximlt (77)
  • Hoxbro (76)
  • dependabot[bot] (72)
  • Coderambling (55)
  • cdeil (30)
  • etihwo (15)
  • pre-commit-ci[bot] (13)
  • s-alexey (10)
  • dalthviz (10)
  • jrycw (10)
  • kdheepak (10)
Top Labels
Issue Labels
type: bug (401) type: enhancement (207) type: docs (127) TRIAGE (112) component: tabulator (101) type: feature (39) good first issue (35) type: discussion (25) bokeh (17) regression (16) api (13) reactivehtml (8) more info needed (8) wontfix (7) need input from Philipp (7) chat (7) has workaround (6) performance (5) in progress (3) type: infra (3) duplicate (2) webassembly (2) ready for review (2) deprecation (2) usage (2) sprintable (2) security (2) pyscript (1) component: template (1) component: ipywidget (1)
Pull Request Labels
ready for review (146) dependencies (72) python (65) status: ready (18) in progress (14) need input from Philipp (7) javascript (7) type: enhancement (6) type: bug (5) status: WIP (4) type: docs (4) type: feature (2) component: tabulator (2) TRIAGE (2) Sprint (1) status: declined (1) api (1)

Packages

  • Total packages: 5
  • Total downloads:
    • npm 5,251 last-month
    • pypi 1,750,293 last-month
  • Total docker downloads: 38,032,623
  • Total dependent packages: 164
    (may contain duplicates)
  • Total dependent repositories: 1,260
    (may contain duplicates)
  • Total versions: 1,071
  • Total maintainers: 4
pypi.org: panel

The powerful data exploration & web app framework for Python.

  • Versions: 463
  • Dependent Packages: 155
  • Dependent Repositories: 986
  • Downloads: 1,749,677 Last month
  • Docker Downloads: 19,064,166
Rankings
Dependent packages count: 0.2%
Dependent repos count: 0.4%
Downloads: 0.4%
Docker downloads count: 0.6%
Average: 1.0%
Stargazers count: 1.3%
Forks count: 2.8%
Maintainers (2)
Last synced: 6 months ago
npmjs.org: @holoviz/panel

The powerful data exploration & web app framework for Python.

  • Versions: 465
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 5,251 Last month
  • Docker Downloads: 18,968,457
Rankings
Docker downloads count: 0.3%
Downloads: 0.9%
Stargazers count: 1.6%
Forks count: 1.9%
Average: 6.0%
Dependent repos count: 10.3%
Dependent packages count: 20.9%
Maintainers (2)
Last synced: 6 months ago
proxy.golang.org: github.com/holoviz/panel
  • Versions: 92
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago
anaconda.org: panel

Panel provides tools for easily composing widgets, plots, tables, and other viewable objects and controls into control panels, apps, and dashboards.

  • Versions: 46
  • Dependent Packages: 8
  • Dependent Repositories: 273
Rankings
Dependent packages count: 5.1%
Dependent repos count: 11.4%
Average: 12.7%
Stargazers count: 15.9%
Forks count: 18.6%
Last synced: 6 months ago
pypi.org: mvvm-lib

A Python Package for Model-View-ViewModel pattern

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 616 Last month
Rankings
Dependent packages count: 10.1%
Average: 34.7%
Downloads: 37.0%
Dependent repos count: 57.0%
Last synced: about 1 year ago

Dependencies

.github/workflows/build.yaml actions
  • actions/checkout v3 composite
  • actions/setup-node v2 composite
  • actions/setup-python v4 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/docs.yaml actions
  • holoviz-dev/holoviz_tasks/install v0.1a15 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/downstream_tests.yaml actions
.github/workflows/gallery.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • conda-incubator/setup-miniconda v2 composite
.github/workflows/jupyterlite.yaml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/test.yaml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • codecov/codecov-action v3 composite
  • holoviz-dev/holoviz_tasks/install v0.1a15 composite
  • ifaxity/wait-on-action v1 composite
  • pre-commit/action v3.0.0 composite
panel/package-lock.json npm
  • 137 dependencies
panel/package.json npm
  • @typescript-eslint/eslint-plugin ^6.5.0 development
  • @typescript-eslint/parser ^6.5.0 development
  • acorn ^8.10.0 development
  • eslint ^8.48.0 development
  • flatpickr ^4.6.9 development
  • @bokeh/bokehjs ~3.2.0
  • @luma.gl/constants ^8.0.3
  • @types/debounce ^1.2.0
  • @types/gl-matrix ^2.4.5
  • debounce ^1.2.0
  • gl-matrix ^3.1.0
  • htm ^3.1.1
  • json-formatter-js ^2.2.1
  • preact ^10.13.0
binder/jupyter-panel-apps-server/setup.py pypi
  • jupyter-server-proxy *
binder/requirements.txt pypi
  • jupyter-vscode-proxy *
  • jupyter_bokeh *
  • pyarrow *
  • pyecharts *
  • xlsxwriter *
examples/apps/django/requirements.txt pypi
  • bokeh ==2.0.2
  • channels ==2.2.0
  • django ==2.2.28
  • jinja2 ==3.0.1
  • panel ==0.9.3
examples/apps/django_multi_apps/requirements.txt pypi
  • Automat ==0.8.0
  • Django ==3.1.14
  • Jinja2 ==2.11.3
  • Markdown ==3.1.1
  • MarkupSafe ==1.1.1
  • Pillow ==9.3.0
  • PyHamcrest ==1.9.0
  • PyYAML ==5.4
  • Twisted ==22.10.0
  • asgiref ==3.2.10
  • attrs ==19.3.0
  • autobahn ==20.12.3
  • bokeh ==2.0.2
  • cffi ==1.13.2
  • channels ==2.4.0
  • colorcet ==2.0.5
  • constantly ==15.1.0
  • cryptography ==41.0.4
  • daphne ==2.4.1
  • holoviews ==1.13.2
  • hvplot ==0.5.2
  • hyperlink ==20.0.1
  • idna ==2.8
  • incremental ==21.3.0
  • numpy ==1.22.0
  • packaging ==20.0
  • pandas ==0.25.3
  • panel ==0.9.3
  • param ==1.9.3
  • pyOpenSSL ==19.1.0
  • pyasn1 ==0.4.8
  • pyasn1-modules ==0.2.7
  • pycparser ==2.19
  • pyct ==0.4.6
  • pyparsing ==2.4.6
  • python-dateutil ==2.8.1
  • pytz ==2019.3
  • pyviz-comms ==0.7.4
  • service-identity ==18.1.0
  • setuptools ==65.5.1
  • six ==1.13.0
  • sqlparse ==0.4.4
  • tornado ==6.3.3
  • txaio ==20.4.1
  • zope.interface ==4.7.1
lite/requirements.txt pypi
  • awscli *
  • bokeh *
  • ipywidgets *
  • jupyter_bokeh *
  • jupyterlab *
  • jupyterlab-open-url-parameter *
  • jupyterlite *
  • nbformat *
  • pkginfo *
  • pyviz_comms *
pyproject.toml pypi
setup.py pypi
  • bleach *
  • bokeh *
  • linkify-it-py *
  • markdown *
  • markdown-it-py *
  • mdit-py-plugins *
  • pandas *
  • param *
  • pyviz_comms *
  • requests *
  • tqdm *
  • typing_extensions *
  • xyzservices *