Skip to main content

No project description provided

Project description

plotlywaterfall

Description

A small package adding simple waterfall plotting capabilities on top of the plotly graphing package. Waterfall graphs are useful to display e.g. financial data such ans cashflow statements in an easily digestible format.

While plotly includes basic capabilities to plot waterfall graphs, it ships only limited features. The plotlywaterfall package provides simple, plotly-express-style waterfall graphs with grouping, multiple stacked categories and variable colors.

Installation

Use pip3:

pip3 install plotlywaterfall

Usage

More examples can be found in the example notebook (https://github.com/docdru/plotlywaterfall/blob/main/example.ipynb). Let's use this dataframe for a simple yet complete example:

df = pd.DataFrame({
    "X": ["A", "B", "C"]*4 + ["D", "D" ], 
    "Y": [4, 1, 8, 7, 3, 2] + [i-1 for i in [4, 1, 8, 7, 3, 2]] + [8, 5],
    "category": ["one"]*3+["two"]*3 + ["one"]*3+["two"]*3 + ["two", "three"],
    "group": ["Group1"]*6 + ["Group2"]*6 + ["Group2", "Group3"]
})

DF

One can plot this data, with defined colors and automatic creating of total and subtotal, by using:

from plotlywaterfall.waterfall import Waterfall

colors = {
    "Group1": {"one": "red", "two": "blue"},
    "Group2": {"one": "salmon", "two": "lightskyblue"},
    "Group3": "green"
}


c = Waterfall(df, x="X", y="Y", category="category", colors=colors, group="group", total=True, subtotals={"C": "Subtotal"})
fig = c.get_fig()
fig

Resulting graph:

Example

Disclaimer

I might maintain and improve the package. I might also not.

Known open points:

  • It is not possible to have mixed signs per X-value.
  • I am note really happy with the interface for defining the colors.

Changelog

Refer to CHANGELOG.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

plotlywaterfall-0.9.3.tar.gz (66.1 kB view details)

Uploaded Source

Built Distribution

plotlywaterfall-0.9.3-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file plotlywaterfall-0.9.3.tar.gz.

File metadata

  • Download URL: plotlywaterfall-0.9.3.tar.gz
  • Upload date:
  • Size: 66.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.26.0

File hashes

Hashes for plotlywaterfall-0.9.3.tar.gz
Algorithm Hash digest
SHA256 bd068ad0ebf536f007e7f2af34d91028111cb2171d6a936a4e1e7890cc3ef127
MD5 5b7ac3633ff4ece2e460f9d424cb2b94
BLAKE2b-256 6978674e1b087fc847a72137aca51cd546681452ba998e53d72361355f1e7f1f

See more details on using hashes here.

File details

Details for the file plotlywaterfall-0.9.3-py3-none-any.whl.

File metadata

File hashes

Hashes for plotlywaterfall-0.9.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6ce8b991f636078021d02537edc9b87084c276616f0c01b40a869f6b0911e7e3
MD5 3c5669ac81dfac5427676e14515b0ba1
BLAKE2b-256 fdfda0b1eade227e3b227e9ef562b7c34ee078004a06d6b9e7f47b0d7265aabd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page