Note
Go to the end to download the full example code.
Peak and Minimum Demand Windows#
Side-by-side stacked-area views around the timestamps of system-wide peak and minimum demand. Each subplot shows a ±3-day window centered on the event so you can see the dispatch ramp into and out of the peak/trough.
plot_peak_demand_window and plot_min_demand_window look up
config.total_load_alias (default "Total Demand") in the dispatch
columns. The Sienna fixture has no storage charging, so the load is
labelled "Native Demand" by default — set
scenario.load_includes_charging = True so the dispatch is labelled
"Total Demand" and the window plots can find it.

/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/datahelpers/sienna.py:381: UserWarning: StandardLoad was not found. Use one of the following components
warnings.warn(message, UserWarning)
----- Available Components -----
RenewableNonDispatch
LoadZone
RenewableDispatch
FixedAdmittance
ACBus
Area
VariableReserve
TwoTerminalHVDCLine
ThermalStandard
Arc
PowerLoad
TapTransformer
Line
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:508: UserWarning: Could not find dataset with pattern ActivePowerTimeSeriesParameter__StandardLoad, consider updating the configuration or removing this pattern to avoid a warning.
warnings.warn(message, UserWarning)
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:508: UserWarning: Could not find dataset with pattern ActivePowerInVariable*, consider updating the configuration or removing this pattern to avoid a warning.
warnings.warn(message, UserWarning)
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:523: UserWarning: No matching datasets found for ['ActivePowerInVariable*'], consider updating the configuration.
warnings.warn(message, UserWarning)
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:706: UserWarning: Unable to create storage load timeseries data, additional calculated loads may not be available.
warnings.warn(
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:508: UserWarning: Could not find dataset with pattern ActivePowerOutVariable*, consider updating the configuration or removing this pattern to avoid a warning.
warnings.warn(message, UserWarning)
/home/runner/work/GridAnalysisToolkit/GridAnalysisToolkit/src/gat/scenariohandlers/sienna.py:508: UserWarning: Could not find dataset with pattern ActivePowerTimeSeriesParameter__StandardLoad, consider updating the configuration or removing this pattern to avoid a warning.
warnings.warn(message, UserWarning)
import warnings
warnings.filterwarnings("ignore", category=DeprecationWarning)
import matplotlib.pyplot as plt
from gat.scenariohandlers import SiennaScenario
import gat.quickplots as qp
sienna_v4 = "../../example_data/sienna/v4"
scenario = SiennaScenario(
simulation_files=f"{sienna_v4}/simulation_store.h5",
system_file=f"{sienna_v4}/sys.json",
)
scenario.load_includes_charging = True
dispatch = scenario.get_area_dispatch(include_charging=False, include_use=False)
fig, axs = plt.subplots(1, 2, figsize=(14, 5), sharey=True)
qp.plot_peak_demand_window(dispatch, ax=axs[0])
qp.plot_min_demand_window(dispatch, ax=axs[1])
plt.tight_layout()
plt.show()
Total running time of the script: (0 minutes 0.645 seconds)