Skip to main content

A collection of helper for table handling and vizualization

Project description

pandas-plots

PyPI - Version GitHub last commit GitHub License py3.10

usage

install / update package

pip install pandas-plots -U

include in python

from pandas_plots import tbl, pls, ven, hlp, pii

example

# load sample dataset from seaborn
import seaborn as sb
df = sb.load_dataset('taxis')
_df = df[["passengers", "distance", "fare"]][:5]
tbl.show_num_df(
    _df,
    total_axis="xy",
    total_mode="mean",
    data_bar_axis="xy",
    pct_axis="xy",
    precision=0,
    kpi_mode="max_min_x",
    kpi_rag_list=(1,7),
)

show_num

why use pandas-plots

pandas-plots is a package to help you examine and visualize data that are organized in a pandas DataFrame. It provides a high level api to pandas / plotly with some selected functions and predefined options:

  • tbl utilities for table descriptions

    • 🌟show_num_df() displays a table as styled version with additional information
    • describe_df() an alternative version of pandas describe() function
    • descr_db() a very short descr for a duckdb relation
    • pivot_df() gets a pivot table of a 3 column dataframe (or 2 columns if no weights are given)
  • pls for plotly visualizations

    • plot_box() auto annotated boxplot w/ violin option
    • plot_boxes() multiple boxplots (annotation is experimental)
    • plot_stacked_bars() shortcut to stacked bars 😄
    • plots_bars() a standardized bar plot for a categorical column
      • features confidence intervals via use_ci option
    • plot_histogram() histogram for one or more numerical columns
    • plot_joints() a joint plot for exactly two numerical columns
    • plot_quadrants() quickly shows a 2x2 heatmap
  • ven offers functions for venn diagrams

    • show_venn2() displays a venn diagram for 2 sets
    • show_venn3() displays a venn diagram for 3 sets
  • hlp contains some (variety) helper functions

    • df_to_series() converts a dataframe to a series
    • mean_confidence_interval() calculates mean and confidence interval for a series
    • wrap_text() formats strings or lists to a given width to fit nicely on the screen
    • replace_delimiter_outside_quotes() when manual import of csv files is needed: replaces delimiters only outside of quotes
    • create_barcode_from_url() creates a barcode from a given URL
    • add_datetime_col() adds a datetime columns to a dataframe
    • show_package_version prints version of a list of packages
    • get_os helps to identify and ensure operating system at runtime
  • pii has routines for handling of personally identifiable information

    • remove_pii() logs and deletes pii from a series

note: theme setting can be controlled through all functions by setting the environment variable THEME to either light or dark

more examples

pls.plot_box(df['fare'], height=400, violin=True)

plot_box

# quick and exhaustive description of any table
tbl.describe_df(df, 'taxis', top_n_uniques=5)

describe_df

# show bars with confidence intervals
_df = df[["payment", "fare"]]
pls.plot_bars(
    _df,
    dropna=False,
    use_ci=True,
    height=600,
    width=800,
    precision=1,
)

bars_with_ci

# show venn diagram for 3 sets
from pandas_plots import ven

set_a = {'ford','ferrari','mercedes', 'bmw'}
set_b = {'opel','bmw','bentley','audi'}
set_c = {'ferrari','bmw','chrysler','renault','peugeot','fiat'}
_df, _details = ven.show_venn3(
    title="taxis",
    a_set=set_a,
    a_label="cars1",
    b_set=set_b,
    b_label="cars2",
    c_set=set_c,
    c_label="cars3",
    verbose=0,
    size=8,
)

venn

tags

#pandas, #plotly, #visualizations, #statistics

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

pandas_plots-0.11.15.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

pandas_plots-0.11.15-py3-none-any.whl (28.6 kB view details)

Uploaded Python 3

File details

Details for the file pandas_plots-0.11.15.tar.gz.

File metadata

  • Download URL: pandas_plots-0.11.15.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for pandas_plots-0.11.15.tar.gz
Algorithm Hash digest
SHA256 d95570675635305b2641bfcffa39337c05e8bb9d84469bffa75430d1e97f9812
MD5 91337c66cf7a3fbe858ac53a6f4deeed
BLAKE2b-256 dcef54184bee0386d1548317ed9b59fa2f80dd4c5feadbdbe90ecb9446e35e54

See more details on using hashes here.

File details

Details for the file pandas_plots-0.11.15-py3-none-any.whl.

File metadata

File hashes

Hashes for pandas_plots-0.11.15-py3-none-any.whl
Algorithm Hash digest
SHA256 b0f11d57a3a13c6bccba398b6b3762c02ba827520f75cc20b716b6d84030c81a
MD5 7db1e9a4f262bf0787d516e47d0d6a40
BLAKE2b-256 6bc43813ccf1ff3bdf7dab35aa8b17864eea2288ac7d5f2135868e67088646b3

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