hermpy.plotting =============== .. py:module:: hermpy.plotting Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/hermpy/plotting/boundary_models/index /autoapi/hermpy/plotting/panels/index Classes ------- .. autoapisummary:: hermpy.plotting.MultiPanel hermpy.plotting.Panel hermpy.plotting.SpectrogramPanel hermpy.plotting.TimeseriesPanel Functions --------- .. autoapisummary:: hermpy.plotting.plot_magnetospheric_boundaries Package Contents ---------------- .. py:function:: plot_magnetospheric_boundaries(ax: matplotlib.pyplot.Axes, plane: str = 'xy', sub_solar_magnetopause: float = 1.45, alpha: float = 0.5, psi: float = 1.04, p: float = 2.75, initial_x: float = 0.5, add_legend: bool = False, zorder: int = 0, color='black', lw=1) -> None Add average magnetopause and bow shock locations based on Winslow et al. (2013). Add the plane projection of the average magnetopause and bow shock locations based on Winslow et al. (2013). These are plotted in units of Mercury radii. Parameters ---------- ax : pyplot.Axes The pyplot axis to add the boundaries to. plane : str {`"xy"`, `"xz"`, `"yz"`}, optional What plane to project the boundaries to. yz is not yet implimented. add_legend : bool {`True`, `False`}, optional Should pyplot legend labels be added. Returns ------- None .. py:class:: MultiPanel(panels: list[Panel]) .. py:attribute:: _panels .. py:method:: __add__(other) -> MultiPanel .. py:method:: plot(sharex=True, show=True, figsize: tuple[int, int] | None = None) .. py:class:: Panel(time_column: str = 'UTC') Bases: :py:obj:`abc.ABC` Base class for all panel types. .. py:attribute:: time_column :value: 'UTC' .. py:attribute:: _ax_set_params :type: dict .. py:method:: __add__(other) -> MultiPanel .. py:method:: _plot_on(ax) :abstractmethod: Plot panel content on the given axis. .. py:property:: ax_set_params :type: dict .. py:method:: plot(show=True) Creates a quick plot for this panel alone. .. py:class:: SpectrogramPanel(data: xarray.DataArray, time_dim: str, y_dim: str, y_bin_edges: list[float | int] | None = None, yscale='log', vmin=None, vmax=None, cmap='viridis', cmap_scale='log', unit='') Bases: :py:obj:`Panel` A class for drawing 2D panels. We call it SpectrogramPanel, but it is general to any channel variable, e.g. energy, frequency, etc. .. py:attribute:: data .. py:attribute:: time_dim .. py:attribute:: y_dim .. py:attribute:: y_bin_edges .. py:attribute:: yscale :value: 'log' .. py:attribute:: vmin :value: None .. py:attribute:: vmax :value: None .. py:attribute:: cmap :value: 'viridis' .. py:attribute:: cmap_scale :value: 'log' .. py:attribute:: unit :value: '' .. py:method:: _plot_on(ax) Plot panel content on the given axis. .. py:class:: TimeseriesPanel(table: astropy.table.QTable, time_column: str = 'UTC') Bases: :py:obj:`Panel` Base class for all panel types. .. py:attribute:: table .. py:property:: unit :type: astropy.units.Unit .. py:method:: _check_units() Tests if the units of each variable in the panel are matching, and hence can be plotted together. .. py:method:: _plot_on(ax) Plot panel content on the given axis.