Open dbrakenhoff opened 1 month ago
Example for a cross-section:
ml.plots.xsection(labels=True, params=True)
Great idea. Some additional ideas:
fig
and ax
handle, so you can adjust your plotGood suggestions.
ax
is definitely something we want (figure is always available through ax.figure
)
- plot location and property of elements as well (e.g. LineSinks)
This is a bit of a challenge, though definitely doable. We'd need to compute intersections for all elements the line crosses. And give each element a e.plot_xsection()
method that takes some distance r
as input and plots the vertical representation of the element at that location. Giving each element a shapely representation through e.geometry
would make that fairly easy though (as suggested here: https://github.com/mbakker7/timml/issues/69).
Seperate plotly part, or plot function that returns x and y lists of data to plot
What would you need for these plots? For now you could add a tim_plotly repository to the tim groundwater organization. With methods that take a Tim-model as input and produce some kind of plotly plot.
- highlight aquifer that is plotted, when plotting in a section,
What do you mean by this one?
Nice ideas. I suggest to start with a plots module and add some functionality there.
highlight aquifer that is plotted, when plotting in a section: What do you mean by this one?
See example below. Lines are calculated heads in aquifer 1 and 2. The aquifers are filled to indicate in which aquifer the calculated heads are present. Or dashed line in the center of the aquifer.
The plot functions under the model object in TTim are somewhat limited.
Proposal:
ml.plots.topview()
ml.plots.xsection()
instead of having all plot functions directly in the model class.ml.plot()
: plot top-view of model with optional layer argml.xsection()
to plot cross-section of modelml.xsection()
becomes something likeml.plot.heads_along_line()
Other suggestions welcome!