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.

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.0.tar.gz (77.1 kB view details)

Uploaded Source

Built Distribution

plotlywaterfall-0.9.0-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for plotlywaterfall-0.9.0.tar.gz
Algorithm Hash digest
SHA256 b1012b33373b004a30c43004d4a44ff66ec3c3260291664922c401a8a6ba8466
MD5 4ceba92ec4a44800b158004590d5023b
BLAKE2b-256 5e36c139feaf7c681d4a81ffd8b8fdf12f4f16f91e763490d83f04b0c6403dca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for plotlywaterfall-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6f14082cfa700cede946733fc8a343b704edcc3549dd48c9ab19699c506ac573
MD5 891f6c785d32777936363cd17f649756
BLAKE2b-256 85bcdc01edd9f0101b8533b91084e73285574068f9828525df37d72db6fc20d7

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