Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
other:python:jyp_steps [2019/06/18 17:53] – [Useful matplotlib reference pages] Added contourf + demo jypeter | other:python:jyp_steps [2019/06/27 10:49] – [Matplotlib] Added example of get/set_position jypeter |
---|
bottom_plot = plot_array[2]</code> | bottom_plot = plot_array[2]</code> |
* creating a figure and axes with a single line: ''my_page, plot_array = **plt**.subplots(3, 1)'' | * creating a figure and axes with a single line: ''my_page, plot_array = **plt**.subplots(3, 1)'' |
| * use [[https://matplotlib.org/api/_as_gen/matplotlib.figure.Figure.html#matplotlib.figure.Figure.add_axes|my_page.add_axes(...)]] to add an axis in an arbirary location of the page\\ ''my_page.add_axes([left, bottom, width, height])'' |
* a Matplotlib **//Artist//** or //Patch// is //something// (e.g a line, a group of markers, text, the legend...) plotted on the Figure/Axis | * a Matplotlib **//Artist//** or //Patch// is //something// (e.g a line, a group of markers, text, the legend...) plotted on the Figure/Axis |
* **clearing** the //page// (or part of it): you probably won't need that... | * **clearing** the //page// (or part of it): you probably won't need that... |
* [[https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplots.html|plt.subplots(...)]] with an **s** at the end ([[https://matplotlib.org/gallery/subplots_axes_and_figures/subplots_demo.html|demo]]) | * [[https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplots.html|plt.subplots(...)]] with an **s** at the end ([[https://matplotlib.org/gallery/subplots_axes_and_figures/subplots_demo.html|demo]]) |
* [[https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplots_adjust.html|subplots_adjust]] can be used to change the overall boundaries of the subplots on the figure, and the spacing between the subplots\\ ''plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=None)''\\ or ''my_page.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=None)'' | * [[https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplots_adjust.html|subplots_adjust]] can be used to change the overall boundaries of the subplots on the figure, and the spacing between the subplots\\ ''plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=None)''\\ or ''my_page.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=None)'' |
| * ''hspace''/''wspace'' is the amount of height/width between the subplots |
| * ''hspace=0.1'' is enough for just displaying the ticks and the labels, without the axis name |
| * use ''hspace=0'' to stick the plots together vertically |
| * do not forget to disable the ticks where there is no space to plot them: ''my_plot.set_xticks([])'' |
| * ''my_page.subplots_adjust(right=0.75)'' will leave 25% on the right of the page for adding a legend outside of a plot |
| * You can also **resize an existing (sub)plot** the following way: |
| - Get the current size information: ''pl_x_bottomleft, pl_y_bottomleft, pl_width, pl_height = my_plot.get_position().bounds'' |
| - Set the new size: e.g reduce the height with ''my_plot.set_position( (pl_x_bottomleft, pl_y_bottomleft, pl_width, pl_height * 0.5) )'' |
* [[https://matplotlib.org/gallery/index.html#subplots-axes-and-figures|Subplots, axes and figures]] gallery | * [[https://matplotlib.org/gallery/index.html#subplots-axes-and-figures|Subplots, axes and figures]] gallery |
* [[https://matplotlib.org/tutorials/intermediate/gridspec.html#sphx-glr-tutorials-intermediate-gridspec-py|Customizing Figure Layouts Using GridSpec and Other Functions]], [[https://matplotlib.org/tutorials/intermediate/constrainedlayout_guide.html|constrained layout]] and [[https://matplotlib.org/tutorials/intermediate/tight_layout_guide.html|tight layout]] | * [[https://matplotlib.org/tutorials/intermediate/gridspec.html#sphx-glr-tutorials-intermediate-gridspec-py|Customizing Figure Layouts Using GridSpec and Other Functions]], [[https://matplotlib.org/tutorials/intermediate/constrainedlayout_guide.html|constrained layout]] and [[https://matplotlib.org/tutorials/intermediate/tight_layout_guide.html|tight layout]] |
* The [[https://matplotlib.org/api/_as_gen/matplotlib.figure.Figure.html|figure(...)]] and the associated methods | * The [[https://matplotlib.org/api/_as_gen/matplotlib.figure.Figure.html|figure(...)]] and the associated methods |
* The [[https://matplotlib.org/api/axes_api.html|axes]] and the associated methods | * The [[https://matplotlib.org/api/axes_api.html|axes]] and the associated methods |
* [[https://matplotlib.org/tutorials/introductory/customizing.html#matplotlib-rcparams|matplotlib default settings]] can be queried and updated | * [[https://matplotlib.org/tutorials/introductory/customizing.html#matplotlib-rcparams|matplotlib default config/settings]] can be queried and updated |
* example: the default figure size (inches) is ''mpl.rcParams['figure.figsize']'' (''[6.4, 4.8]'') | * example: the default figure size (inches) is ''mpl.rcParams['figure.figsize']'' (''[6.4, 4.8]'') |
* current settings' file: ''mpl.matplotlib_fname()'' | * current settings' file: ''mpl.matplotlib_fname()'' |