Skip to main content

Makes plotting matplotlib easy.

Project description

Simple Python plot

Python 3.10 License: AGPL v3 Code Style: Black Code Coverage

Call this pip package to easily create:

  • a boxplot
  • a multi-line plot
  • a latex table

Example Boxplot

python -m simplt --box-plot

Which is the same as running:

from simplt.boxplot.boxplot import create_box_plot
import numpy as np

extensions=[
    ".png",
],
filename="example_box",
output_dir="output",

# Fixing random state for reproducibility
np.random.seed(7)

# Generate dummy data.
first = [39, 44, 50, 50, 58, 63]
second = [80, 100, 100, 120]

# Add a name for each boxplot for in the legend, and y values.
y_series = {"data_1": first, "data_2": second}

create_box_plot(
    extensions=extensions,
    filename=filename,
    legendPosition=0,
    output_dir=output_dir,
    x_axis_label="x-axis label [units]",
    y_axis_label="y-axis label [units]",
    y_series=y_series,
)

And creates:

Example Multi-Line Plot

python -m simplt --line-plot

Which is the same as running:

from simplt.line_plot.line_plot import line_plot
import numpy as np

extensions=[
    ".png",
],
filename="example_line",
output_dir="output",

multiple_y_series = np.zeros((2, 2), dtype=int)
# actually fill with data
multiple_y_series[0] = [1, 2]
lineLabels = [
    "first-line",
    "second_line",
]  # add a label for each dataseries
single_x_series = [3, 5]

plot_multiple_lines(
    extensions=extensions,
    filename=filename,
    label=lineLabels,
    legendPosition=0,
    output_dir=output_dir,
    x=single_x_series,
    x_axis_label="x-axis label [units]",
    y_axis_label="y-axis label [units]",
    y_series=multiple_y_series,
)

And creates a (colorblind-friendly) lineplot:

Example Multi-Group Scatter Plot

python -m simplt --dot-plot

Which is the same as running:

from simplt.dotted_plot.dotted_plot import plot_multiple_dotted_groups
import numpy as np

single_x_series = [3., 5.]
multiple_y_series:Dict[int,Dict[float,List[float]]] = {}

# actually fill with data
multiple_y_series[0]={}
multiple_y_series[0][single_x_series[0]] = [1., 2., 5.]
multiple_y_series[0][single_x_series[1]] = [0., 6.]

multiple_y_series[1]={}
multiple_y_series[1][single_x_series[0]] = [3., 4.]
multiple_y_series[1][single_x_series[1]] = [1., 5.]



groupLabels = [
    "first_group",
    "second_group",
]  # add a label for each dataseries

print(multiple_y_series)
plot_multiple_dotted_groups(
    extensions=extensions,
    filename=filename,
    label=groupLabels,
    legendPosition=0,
    output_dir=output_dir,
    x_axis_label="x-axis label [units]",
    y_axis_label="y-axis label [units]",
    y_series=multiple_y_series,
)

And creates a (colorblind-friendly) dotplot:

For Developers

Below are pip-package publication instructions.

Releasing pip package update

To udate the Python pip package, one can first satisfy the following requirements:

pip install --upgrade pip setuptools wheel
pip install twine

Followed by updating the package with:

python3 setup.py sdist bdist_wheel
python -m twine upload dist/\*

Developer pip install

Build the pip package with:

pip install --upgrade pip setuptools wheel
pip install twine

Install the pip package locally with:

rm -r dist
rm -r build
python3 setup.py sdist bdist_wheel
pip install -e .

Upload the pip package to the world with:

rm -r dist
rm -r build
python3 setup.py sdist bdist_wheel
python3 -m twine upload dist/\*

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

simplt-0.0.4.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

simplt-0.0.4-py2.py3-none-any.whl (22.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file simplt-0.0.4.tar.gz.

File metadata

  • Download URL: simplt-0.0.4.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for simplt-0.0.4.tar.gz
Algorithm Hash digest
SHA256 050d96e49403019c66087177603f21a1bd5258606a3d69914cb7d736ecf76346
MD5 5e5b721d3a29d00748e6291f8dced8fb
BLAKE2b-256 6bf7e435fb910a061b8d757ef8582e7c55721ae2f8062724e403fbebe819081a

See more details on using hashes here.

File details

Details for the file simplt-0.0.4-py2.py3-none-any.whl.

File metadata

  • Download URL: simplt-0.0.4-py2.py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for simplt-0.0.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 b11e9ce54946db591d557f9d1af5b575e578cc1c8c9b0169103964d6b8081498
MD5 f8ca2342d052e604069ac9fa6a810b64
BLAKE2b-256 24bbc456974a68ed368bec43b732599188fa3e726247e20baef6892beb447a3b

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