Skip to main content

A custom Matplotlib theme using the Poppins font styled like ggplot.

Project description

Matplotlib Poppins Theme (Inspired by ggplot)

This package provides a custom theme for Matplotlib, inspired by the visual style of ggplot, using the Poppins font for a clean and modern look.

Features

  • Custom Matplotlib theme with the Poppins font.
  • Configurable options for title size, label size, boldness, and grid display.
  • Inspired by ggplot2's elegant styling.

Installation

You can install this package via pip:

pip install finres_ggpt2_matplotlib

Usage

import finres_ggpt2_matplotlib

# Apply the custom Poppins theme
finres_ggpt2_matplotlib.set_poppins_theme()

# Now create your plots
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [10, 15, 13, 17, 18]
plt.plot(x, y)
plt.title("Sample Poppins Plot")
plt.show()

Customization Options

You can customize the theme by passing different options to set_poppins_theme():

# Apply the Poppins theme with custom options
matplotlib_poppins_theme.set_poppins_theme(
    title_size=18,        # Custom title size
    label_size=14,        # Custom label size
    bold_title=True,      # Bold titles
    bold_labels=False,    # Non-bold axis labels
    show_grid=True        # Show grid lines
)




import matplotlib.pyplot as plt
import numpy as np

categories = ['Category A', 'Category B', 'Category C', 'Category D']
x = np.linspace(0, 10, 100)  # Shared x-axis for all plots
data = {category: np.sin(x + i) for i, category in enumerate(categories)}  # Different sine waves for each category

# Create a figure and axes for the faceted plot (2 rows, 2 columns)
fig, axes = plt.subplots(2, 2, figsize=(10, 8))  # Create a 2x2 grid of subplots
axes = axes.flatten()  # Flatten axes for easy iteration

# Iterate through each axis and plot the corresponding data
for ax, (category, y) in zip(axes, data.items()):
    ax.plot(x, y, label=category, color=np.random.rand(3,))
    ax.set_title(f"Facet: {category}", fontsize=12, weight='bold')  # Set the title for each facet
    ax.set_xlabel('X-axis')
    ax.set_ylabel('Y-axis')
    ax.legend()

# Adjust layout for better spacing
plt.tight_layout()

# Show the faceted plot
plt.show()

with the theme Faceted Plot

Faceted Plot

Parameters:

  • title_size: Sets the font size for the plot title (default is 14).
  • label_size: Sets the font size for the axis labels (default is 12).
  • bold_title: Boolean to specify if the title should be bold (default is True).
  • bold_labels: Boolean to specify if the axis labels should be bold (default is True).
  • show_grid: Boolean to specify if the grid should be shown (default is False).

Contributing

Contributions are welcome! Feel free to submit a pull request or open an issue on GitHub.

License

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

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

finres_ggpt2_matplotlib-0.2.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

finres_ggpt2_matplotlib-0.2.0-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file finres_ggpt2_matplotlib-0.2.0.tar.gz.

File metadata

File hashes

Hashes for finres_ggpt2_matplotlib-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8b03a33a9eaf48fd2cb4e4f9d636037b3ab0bfa2ddff496e2cc4505b64da799b
MD5 5862616f63e19ebb8646bdf95b535f55
BLAKE2b-256 6ae7e5e1163e20e26a5024d24cf8a73d2eb7a940da85abb9bd1628ff98aba9a4

See more details on using hashes here.

File details

Details for the file finres_ggpt2_matplotlib-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for finres_ggpt2_matplotlib-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc6586688b347999db1c8587addd710840121b9be17c7223939a4bb9dd8708b8
MD5 b01e61d71bdf117a5d7e96a26957c837
BLAKE2b-256 7e651cb4f87cc5f850b15f81399556ce0e2feaffd4b00a0a9a524f127b623586

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