marmot.plottingmodules.storage.Storage#

class Storage(Zones: List[str], Scenarios: List[str], AGG_BY: str, ordered_gen: List[str], marmot_solutions_folder: pathlib.Path, color_list: list = ['#396AB1', '#CC2529', '#3E9651', '#ff7f00', '#6B4C9A', '#922428', '#cab2d6', '#6a3d9a', '#fb9a99', '#b15928'], **kwargs)[source]#

Bases: marmot.plottingmodules.plotutils.plot_data_helper.PlotDataStoreAndProcessor

Energy storage plots.

The storage.py module contains methods that are related to storage devices.

Storage inherits from the PlotDataStoreAndProcessor class to assist in creating figures.

Parameters
  • Zones (List[str]) – List of regions/zones to plot.

  • Scenarios (List[str]) – List of scenarios to plot.

  • AGG_BY (str) – Informs region type to aggregate by when creating plots.

  • ordered_gen (List[str]) – Ordered list of generator technologies to plot, order defines the generator technology position in stacked bar and area plots.

  • marmot_solutions_folder (Path) – Directory containing Marmot solution outputs.

  • color_list (list, optional) – List of colors to apply to non-gen plots. Defaults to ColorList().colors.

Methods

ind_bat(figure_name, prop[, timezone, ...])

Creates time series or duration curve plot of generation or load for a single battery.

storage_volume([timezone, start_date_range, ...])

Creates time series plot of aggregate storage volume for all storage objects in a given region.

storage_volume(timezone: str = '', start_date_range: Optional[str] = None, end_date_range: Optional[str] = None, **_)[source]#

Creates time series plot of aggregate storage volume for all storage objects in a given region.

A horizontal line represents full charge of the storage device. All scenarios are plotted on a single figure.

Parameters
  • timezone (str, optional) – The timezone to display on the x-axes. Defaults to “”.

  • start_date_range (str, optional) – Defines a start date at which to represent data from. Defaults to None.

  • end_date_range (str, optional) – Defines a end date at which to represent data to. Defaults to None.

Returns

Dictionary containing the created plot and its data table.

Return type

dict

ind_bat(figure_name: str, prop: str, timezone: str = '', start_date_range: Optional[str] = None, end_date_range: Optional[str] = None, **_)[source]#

Creates time series or duration curve plot of generation or load for a single battery.

A horizontal line represents max discharge power of the battery. All scenarios are plotted on a single figure.

Parameters
  • figure_name (str) – Figure output name. Used to control whether plot shows generation or load, as well as duration curve or chronological time series.

  • timezone (str, optional) – The timezone to display on the x-axes. Defaults to “”.

  • prop (str) – Used to pass in battery names. Input format should be a comma seperated string.

  • start_date_range (str, optional) – Defines a start date at which to represent data from. Defaults to None.

  • end_date_range (str, optional) – Defines a end date at which to represent data to. Defaults to None.

Returns

Dictionary containing the created plot and its data table.

Return type

dict