Skip to main content

pyescher 🎨✨

A Python plotting library for elegant and physics-inspired visualizations

📌 Overview

pyescher is a convenient wrapper for Matplotlib, designed to create beautiful, publication-ready plots with minimal effort. It includes built-in styling, marker cycling, and support for mathematical functions.

🚀 Installation

Install pyescher using pip:

pip install pyescher

📜 Quick Example: Bessel and Hankel Functions

The following example demonstrates how to plot Bessel and Hankel functions using pyescher:

import pyescher as pe
from scipy.special import jn, hankel1
import numpy as np

# Define x-values
x = np.linspace(0, 20, 1000)

# Compute function values
y1 = jn(1, x)        # Bessel function J1
y2 = hankel1(2, x)   # Hankel function H2

# Create Line objects
l1 = pe.Line(x, y1, label='Bessel function of the first kind of order 1')
l2 = pe.Line(x, y2, label='Hankel function of the first kind of order 2')

# Plot using pyescher
pe.plot_lines(l1, l2, 
              xlabel='x', 
              ylabel='y', 
              title='Bessel and Hankel functions',
              show_marker=True,
              nmarkers=21,
              cycle_markers=True,
              cycle_linestyle=True,
              marker_size=5)

📊 Example Output

Example Plot


🎯 Features

✅ Publication-Ready Styling – Easily generate beautiful plots.
✅ Auto-Cycling Markers & Linestyles – Ensures unique styles per plot.
✅ Convenient Plot Handling – Simplifies function-based plotting.
✅ Customizable Annotations & Legends – Clean, well-labeled visuals.


🔧 API Overview

📈 pe.plot_lines(*lines, **kwargs)

Plot multiple Line objects with various styling options.
Common Parameters:

  • xlabel, ylabel, title – Axis labels and title.
  • show_marker=True – Adds markers automatically.
  • nmarkers=21 – Controls marker placement frequency.
  • cycle_markers=True – Cycles through different marker styles.
  • cycle_linestyle=True – Cycles through different line styles.
  • marker_size=5 – Adjusts marker size.

🎨 Why Use pyescher?

📌 Optimized for Scientific & Technical Plots
📌 Saves Time on Styling & Formatting
📌 Produces Aesthetic, Readable Visuals for Papers & Presentations


🛠️ Installation & Development

Clone the repository and install dependencies:

git clone https://github.com/fennisrobert/pyescher.git
cd pyescher
pip install -e .

🤝 Contributing

Contributions are welcome! Feel free to submit an issue or pull request.


🏆 Acknowledgments

Inspired by physics-style plots commonly found in academic papers.

📧 Contact: fennisrobert@gmail.com
📜 License: MIT


🚀 Get started with pyescher and create stunning plots effortlessly! 🎨

Metadata

Release files for pyescher 0.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyescher 0.2.2
File Size Uploaded Provenance
pyescher-0.2.2.tar.gz 119.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pyescher 0.2.2
File Interpreter ABI Platform
pyescher-0.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 127.8 kB

Release files / pyescher-0.2.2.tar.gz

Download URL pyescher-0.2.2.tar.gz
Size 119.7 kB
Tags Source
SHA-256 checksum
How to use checksums
33956f36d5e6ddc89a626fecad9ae0039bccc287b78ec01b19677ea6b8dabc58
BLAKE2b-256 checksum
How to use checksums
6d218f4de410af90b2ef931f3d60371dc13eb49ad0fe0e956eee91d508e4ee6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.9

Release files / pyescher-0.2.2-py3-none-any.whl

Download URL pyescher-0.2.2-py3-none-any.whl
Size 8.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5a6ca47e745caf913c82ae803f6a470fced7c18b8f86bdc4a3d6edd2496e09ff
BLAKE2b-256 checksum
How to use checksums
2da7a33df4105e541a54017eea8037af52d5d7970daed8b8bbaf27e08fedf9a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.9

Security for pyescher 0.2.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page