Skip to content

A context manager for matplotlib plotting interface.

License

Notifications You must be signed in to change notification settings

smk508/Plot-Helper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Plot-Helper

PyPI version

This is a context manager for matplotlib figures. It creates a new pair of figure/axes upon entry and saves, plots, and clears the figure on exit.

This is a little cleaner than manually saving and drawing figures made with matplotlib and this makes it easier to use the object oriented API of matplotlib which gives you more control and flexibility over the default pyplot api.

Installation

pip install plot-helper

Usage

    import math

    import numpy as np
    from plot_helper import Plotter    


    x = np.linspace(0,2*math.pi,100)
    y = np.sin(x)


    with Plotter(filename="where_to_save.png", show=True, figsize=(10,10)) as ax:
        ax.plot(x,y)

This will save the plot to where_to_save.png and also show it. Both filename and show are optional parameters, and any other arguments will be passed to the plt.subplots function.

You can also configure default values for a base_path where to save files to and whether or not plots should be shown:

    import math

    import numpy as np

    import plot_helper
    from plot_helper import Plotter    

    plot_helper.SHOW = True # Show all plots by default
    plot_helper.BASE_FILEPATH = "demo" # Save all plots in this script under the folder demo/

    x = np.linspace(0,2*math.pi,100)
    y = np.sin(x)


    with Plotter(filename="where_to_save.png", figsize=(10,10)) as ax:
        # This will be saved under 'demo/where_to_save.png" 
        # Also the plot will be shown upon exiting the with statement
        ax.plot(x,y)

Miscellaneous

This is mostly a convenience for me since I use matplotlib a lot in my projects so I often copy paste this thing everywhere I go. Any feedback and contributions is welcome.

About

A context manager for matplotlib plotting interface.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages