config: yml file#
The config.yml allows adjustment of many internal settings for Marmot. The adjustment of these settings are all optional and are setup with default values. Users who would like to further customize how Marmot works can change these values in a standard text editor.
Configurations include:
Figure fonts
Figure size
Figure axes options
Figure axes label options
Figure Legend control
Formatter control settings
Assignment of primary input files
Unlike the other input files, the config.yml is located in the root Marmot directory. A config.yml file will be created the first time the marmot_h5_formatter.py or marmot_plot_main.py is run. After the yml file has been created users will be able to change any settings they like within the file. Once created, this file is never overwritten by Marmot. To revert to default settings, delete the config.yml file and Marmot will create it again at runtime.
Default Values and Descriptions#
- font_settings:
Settings to adjust font sizes, family, and tick size within figures.
xtick_size: 12
ytick_size: 12
axes_label_size: 16
legend_size: 12
title_size: 16
font_family: serif
- text_position:
Adjust the position of text relative to the edge of the plot (matplotlib points).
title_height: 40
- figure_size:
Adjust the x and y-axes dimensions of the output figure.
xdimension: 6
ydimension: 4
- axes_options:
Allows adjustment of the minimum and maximum tick marks on datetime x-axes and the number of decimal points to include on the y-axes. Also controls visibility of figure spines and legend settings and position.
x_axes_maxticks: 8
x_axes_minticks: 4
y_axes_decimalpt: 1
major_x_tick_length: 5
major_y_tick_length: 5
hide_top_spine: true
hide_right_spine: true
hide_bottom_spine: false
hide_left_spine: false
legend_position: center right
legend_columns: 1
show_legend_frame: true
New in version 0.9.0: legend control settings
- axes_label_options:
Controls whether x-axes labels are rotated from their default horizontal (0 degrees), and at what number of labels to begin rotating to the specified rotation_angle. By default, labels will begin rotating at 7 labels to an angle of 45 degrees from 0 degrees.
rotate_x_labels: true
rotate_at_num_labels: 7
rotation_angle: 45
- plot_data:
Controls certain plot data settings. curtailment_property source of Curtailment data. The code defaults to Marmot’s calculated Curtailment property. plot_title_as_region If True a the region/zone name will be added as a title to the figure include_barplot_load_storage_charging_line specifies whether to include the line representing pumped load in total generation bar plots. include_timeseries_load_storage_charging_line specifies whether to include the line representing pumped load in timeseries generation plots *_net_imports settings controls whether net imports should be included in the figures.
curtailment_property: Curtailment
plot_title_as_region: true
include_barplot_load_lines: true
include_stackplot_load_lines: true
include_barplot_load_storage_charging_line: true
include_timeseries_load_storage_charging_line: true
include_barplot_net_imports: true
include_stackplot_net_imports: true
- load_legend_names:
Sets the legened name of load and demand lines.
load: ‘Demand + Storage Charging’
demand: Demand
New in version 0.10.0.
- formatter_settings:
Formatter specific settings, VOLL value, skip_existing_properties Toggles whether existing properties are skipped or overwritten if they already contained in a previous processed_h5 file, the default is to skip. append_plexos_block_name Toggles whether to append PLEXOS block name to formatted results e.g ST, MT, LT, PASA. Defaults to False. exclude_pumping_from_reeds_storage_gen toggles whether to exclude pumping (negative gen) from ReEDS storage generation. Defaults to True.
VoLL: 10000
skip_existing_properties: true
append_plexos_block_name: false
exclude_pumping_from_reeds_storage_gen: true
New in version 0.10.0: exclude_pumping_from_reeds_storage_gen setting
- multithreading_workers: 1
Sets multithread workers when reading data, Defaults to 1.
- figure_file_format: svg
Adjust the plot image format. The default is svg, a vector-based image. This field accepts any format that is compatible with matplotlib.
- shift_leapday: false
Handles auto shifting of leap day, if required by your model. The default is false.
- read_csv_properties: false
If True the Marmot plotter will attempt to read the required plot property from a csv file if it cannot be found in the formatted h5 file. Format of data must adhere to the standard Marmot formats for each data class, e.g generator, line etc.
- Filename should be of the following pattern:
{scenario}_{plx_prop_name}.csv
- An example of a line_Net_Import:
Base DA_line_Net_Import.csv
These csv files should be saved in the csv_properties folder which will be created in the Marmot_Solutions_folder.
New in version 0.11.0.
- auto_convert_units: true
If True automatically converts Energy and Capacity units so that no number exceeds 1000. All base units are in MW, and units can be converted to GW, TW and kW.
- user_defined_inputs_file: Marmot_user_defined_inputs.csv
Change the default Marmot_user_defined_inputs file, file must be created first.
- plot_select_file: Marmot_plot_select.csv
Change the default Marmot_plot_select.csv file, file must be created first.
- plexos_properties_file: plexos_properties.csv
Change the default plexos_properties_file.csv file, file must be created first.
- reeds_properties_file: reeds_properties.csv
Change the default reeds_properties_file.csv file, file must be created first.