Ga naar inhoud

Planning visualiseren

Deze handleiding gaat dieper in op de visualisaties in het raplan_rws pakket en het hoofdpakket raplan (Engels).

Deze plots geven visueel inzicht in de planning.

Voor de volledigheid: RwsProject inladen

Voor de rest van deze handleiding gaan we er vanuit dat er een RwsProject is ingeladen:

from raplan_rws.project import Horizon, RwsProject

# Een horizon van 2026 tot 2050 om de maatregelen te filteren.
horizon = Horizon(start=2026, end=2050)

# Laad het RWS project in vanaf een Excel.
rws_project = RwsProject.van_excel_bestand(
    # Bestandspad naar de maatregelplanning
    "../generated/irene_marijke_volledig.xlsx",
    # Projectnaam (mag alles zijn)
    naam="Irene -en Marijkesluis",
    # Horizon van 2026 tot 2050
    horizon=horizon,
    # Maximale uitstel wordt genomen als factor maal het uiterst advies-uitstel
    vervroeging_factor=0.25,
    # Bonus t.o.v. uiterst advies jaar
    later_dan_uiterst=0,
    # Maximaal aantal jaar naar voren
    max_vervroeging=1,
    # Maximaal aantal jaar naar achter
    max_uitstel=5,
)

Gantt-grafiek van alle ingrepen aan alle beheerobjecten

Het pakket faciliteert zogeheten Gantt-grafieken om de planning te visualiseren.

Het snippet hieronder visualiseert een [RwsProject][raplan.project.RwsProject] op basis van de ingrepen (samenvallende maatregelen) op dezelfde objecten.

from raplan_rws import plot

# Maak een figuur en schrijf hem weg naar een bestand met suffix (achtervoegsel)
suffix = "origineel"
fig = plot.gantt_ingrepen(
    rws_project,
    horizon=horizon,
    # Voel je vrij om hier een nieuw Horizon object aan te maken
    # als je een ander domein wil bekijken. Bijvoorbeeld:
    # horizon=Horizon(2020, 2080),
)
fig.write_image(f"../generated/ingrepen-overzicht_{suffix}.pdf")
fig.write_html(f"../generated/ingrepen-overzicht_{suffix}.html")

Gantt-grafiek alle maatregelen per object

from raplan_rws import plot

# Neem het onderliggend RaPlan project uit het `RwsProject`.
project = rws_project.project

# Wandel over alle `System` objecten in zo'n RaPlan project: de beheerobjecten
for system in project.systems:
    # Maak een Gantt-grafiek en exporteer deze met de DISK code in de bestandsnaam.
    fig = plot.gantt_beheerobject(
        system,
        horizon=horizon
    )
    fig.write_image(f"../generated/{system.name} - maatregelen_overzicht_{suffix}.pdf")
    fig.write_html(f"../generated/{system.name} - maatregelen_overzicht_{suffix}.html")

Reguliere raplan plots

In het hoofdpakket, raplan, zitten ook diverse opties voor visualisatie.

Deze staan verder toegelicht op de hoofddocumentatie van RaPlan en specifiek in de raplan.plot module.