You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

 

Now that the model has run we can access the generated output. We start by getting the waterlevel timeseries for the observation point, by using the GetFlowFlexibleMeshTimeSeries function and passing the model, name of the output and the feature (observation point) to it.

Get timeseries for observation point
waterlevelSeries = GetFlowFlexibleMeshTimeSeries(fmModel, "Water level (waterlevel)", observationPoint)

 

Now we have a list of [datetime, value] that we can plot. To create a chart we start by import the ChartFunctions library and creating an area series for our timeseries.

Create area series
from Libraries.ChartFunctions import *

areaSeries = CreateAreaSeries(waterlevelSeries)

 

With the areaSeries we create the chart and open a view for the chart.

Create chart and open view
chart = CreateChart([areaSeries])
chart.Name = "Waterlevel at observation point"

OpenView(chart)

 

 

The chart is still a bit basic and missing some information, so we are going to edit the chart.

Improve chart layout
areaSeries.Color = Color.CadetBlue
areaSeries.Title = observationPoint.Name
areaSeries.LineVisible = False
areaSeries.PointerVisible = False

chart.Legend.Visible = True
chart.Legend.Alignment = LegendAlignment.Bottom

chart.LeftAxis.Title = "Waterlevel (m)"
chart.LeftAxis.Automatic = False
chart.LeftAxis.Minimum = -4
chart.LeftAxis.Maximum = 5

chart.BottomAxis.Title = "Time"

 

Now we have the chart we want :

 

Now we also want to export the timeseries so we can use it outside Deltashell. For this we have two options : export the chart as image or export the timeseries to a .csv (Comma separated values) file.

Export data
chart.ExportAsImage("D:\\testImage.jpg", 1000,1000)

ExportListToCsvFile("D:\\test.csv", waterlevelSeries)

 

We can also create a map for a certain quantity (waterlevel) at a certain time. For this we need to import the mapfunctions.

Using the map functions we create a map, waterlevel layer and a satellite image layer. Then we add the layers to the map.Layers and open the view. To set the time selection of the view to a certain date we use "SetViewTimeSelection"

Create map for output
from Libraries.MapFunctions import *

map = Map()
outputLayer = mf.CreateLayerForObject(fmModel.OutputWaterLevel)
satLayer = CreateSatelliteImageLayer()
map.Layers.AddRange([outputLayer, satLayer])

view = OpenView(map)
SetViewTimeSelection(view, datetime(2014,1,4, 12,0,0))

 

We should get an map showing the waterlevel at our selected timestep like the image below:

 

We can export this map as image by calling the "ExportImage" function and using the image property of the map

Export map image
ExportImage(map.Image, "D:\\temp.png", ImageType.PNG)

 

 

 

  • No labels