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.4.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for finres_ggpt2_matplotlib-0.4.0.tar.gz
Algorithm Hash digest
SHA256 60c3c6057df66d4e87cd525ebfd21bd4d41d98541971f602edfdcca4d928383f
MD5 d7f0f3ae2f8785f0630cbd753241c00f
BLAKE2b-256 ad1a8bb15f5852767d96e8cf79492f5d7cdf2ebc2349778c83a954e0c90adb19

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for finres_ggpt2_matplotlib-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 caad1b16677eef02b001aca9a6b75da0acbf95a7eb586d9c92798b41be2bc783
MD5 fa02f9172b3023b67ea231a9e29e4bff
BLAKE2b-256 b5f41c1c451557851c8797f83d3e61568d1dba64a5b0d38fbee0248151fd6dd1

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