Skip to main content

A Python library for enhancing Matplotlib with additional features.

Project description

MatplotKit

MatplotKit is a lightweight Python library designed to enhance Matplotlib with additional features and utilities, making data visualization more convenient and elegant.

Features

  • Decorators for Plot Functions

    • @with_axes decorator automatically handles axes creation
    • Simplifies plot function implementation
    • Customizable figure size support
  • 📊 Enhanced Annotations

    • Easy-to-use diagonal line addition
    • More annotation utilities coming soon
  • 📈 Taylor Diagram Support

    • Comprehensive implementation of Taylor diagrams
    • Perfect for model evaluation and comparison
    • Customizable styling options

Installation

Install MatplotKit using pip:

pip install matplotkit

Quick Start

Here's a simple example of using MatplotKit:

import matplotlib.pyplot as plt
from matplotkit import with_axes, add_diagonal_line

# Using the decorator to automatically handle axes
@with_axes(figsize=(8, 6))
def scatter_plot(x, y, ax=None):
    ax.scatter(x, y)
    # Add a diagonal line with custom style
    add_diagonal_line(ax, color='red', linestyle='--', alpha=0.5)
    return ax

# Your plotting code
x = [1, 2, 3, 4, 5]
y = [1.1, 2.2, 2.9, 4.1, 5.2]
scatter_plot(x, y)
plt.show()

Requirements

  • Python >= 3.8.1
  • Matplotlib ~3.0

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Shuang (Twist) Song

Citation

If you use MatplotKit in your research, please cite it as:

@software{matplotkit2024,
  author = {Song, Shuang},
  title = {MatplotKit: Enhanced Matplotlib Utilities},
  year = {2024},
  publisher = {GitHub},
  url = {https://github.com/SongshGeo/matplotkit}
}

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

matplotkit-0.3.0.tar.gz (307.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

matplotkit-0.3.0-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file matplotkit-0.3.0.tar.gz.

File metadata

  • Download URL: matplotkit-0.3.0.tar.gz
  • Upload date:
  • Size: 307.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for matplotkit-0.3.0.tar.gz
Algorithm Hash digest
SHA256 ad9d41b906e35ca95b602d02fa490209373779662c7b7ae8a0bd2283ee0b18c8
MD5 d5cb2f2cbfb46d79b89cfb0bfb90f6cd
BLAKE2b-256 60eaa49e1b917c358e645081386812007d7528cc97e93696209f057084345f65

See more details on using hashes here.

File details

Details for the file matplotkit-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: matplotkit-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.6 {"installer":{"name":"uv","version":"0.11.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for matplotkit-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 31bbd4eea0c6e24d49627abef7f8a5c62c7273231111096ea37db9d3f69b43de
MD5 f5a471979deb5ce4691e8ca098ff9c1d
BLAKE2b-256 06970b7c2fea738ac6b744d1da4a58f96d85b223def91ce9bec4b55dd4d59400

See more details on using hashes here.

Supported by

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