install / update package
pip install pandas-plots -U
include in python
from pandas_plots import tbl, pls, ven, hlp, pii
# 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),
)
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 informationdescribe_df()
an alternative version of pandas describe()
functiondescr_db()
a very short descr for a duckdb
relationpivot_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 optionplot_boxes()
multiple boxplots (annotation is experimental)plot_stacked_bars()
shortcut to stacked bars 😄plots_bars()
a standardized bar plot for a categorical columnuse_ci
optionplot_histogram()
histogram for one or more numerical columnsplot_joints()
a joint plot for exactly two numerical columnsplot_quadrants()
quickly shows a 2x2 heatmapven
offers functions for venn diagrams
show_venn2()
displays a venn diagram for 2 setsshow_venn3()
displays a venn diagram for 3 setshlp
contains some (variety) helper functions
df_to_series()
converts a dataframe to a seriesmean_confidence_interval()
calculates mean and confidence interval for a serieswrap_text()
formats strings or lists to a given width to fit nicely on the screenreplace_delimiter_outside_quotes()
when manual import of csv files is needed: replaces delimiters only outside of quotescreate_barcode_from_url()
creates a barcode from a given URLadd_datetime_col()
adds a datetime columns to a dataframeshow_package_version
prints version of a list of packagesget_os
helps to identify and ensure operating system at runtimepii
has routines for handling of personally identifiable information
remove_pii()
logs and deletes pii from a seriesnote: theme setting can be controlled through all functions by setting the environment variable
THEME
to either light or dark
pls.plot_box(df['fare'], height=400, violin=True)
# quick and exhaustive description of any table
tbl.describe_df(df, 'taxis', top_n_uniques=5)
# show bars with confidence intervals
_df = df[["payment", "fare"]]
pls.plot_bars(
_df,
dropna=False,
use_ci=True,
height=600,
width=800,
precision=1,
)
# 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,
)