Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.8 #360

Merged
merged 94 commits into from
Jul 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
cef2b4b
geotop_lithok_in_cross_section added alpha
marcovanbaar Aug 31, 2023
97a85ae
Improve progressbar in docs (#313)
rubencalje Jan 19, 2024
af10738
Fix Issue 315 (#316)
rubencalje Jan 24, 2024
d730e26
Update webservices.py (#314)
bdestombe Jan 24, 2024
904f269
HHNK revert to old url (#321)
bdestombe Jan 30, 2024
30197dd
Add support for NHI GWO database (#319)
rubencalje Jan 31, 2024
9cc59d3
ds_to_gridprops() to also pass unaltered datavars (#318)
bdestombe Feb 2, 2024
0feb8e0
Zero layer thickness layers are considered active due to float roundi…
bdestombe Feb 12, 2024
6d5bddc
Fix issue 322 (#323)
rubencalje Feb 15, 2024
3a2bcd7
Improve grid rotation (#325)
rubencalje Feb 28, 2024
7232234
Add get_flow_residuals and get_flow_lower_face (#327)
rubencalje Mar 6, 2024
464edbe
Add precision to output-files
rubencalje Mar 6, 2024
007d4c9
Add krags to _get_flopy_data_object
rubencalje Mar 6, 2024
f8046a9
Improve export to ugrid_nc-file, to support imod qgis plugin (#329)
rubencalje Mar 12, 2024
ebc07b0
Update attributes_encodings.py (#332)
bdestombe Mar 13, 2024
f7a34dc
Add crs to get_gwo_wells
rubencalje Mar 15, 2024
97182fa
Allow a DataArray in polygon_to_hfb
rubencalje Mar 15, 2024
75632b2
Add get_time_step_length
rubencalje Mar 15, 2024
7847d8b
update knmi_data_platform base_url
martinvonk Apr 2, 2024
d85ee00
Merge branch 'dev' of https://github.com/gwmod/nlmod into dev
marcovanbaar Apr 4, 2024
45f09ec
Update webservices Amstel, Gooi en Vecht
rubencalje Apr 4, 2024
5bae2b1
Update download_level_areas and download_watercourses so they work wi…
rubencalje Apr 5, 2024
cde1359
Solve bug where there can be multiple tiles in ahn reader with the sa…
rubencalje Apr 5, 2024
68ee919
Update cache.py (#326)
bdestombe Apr 15, 2024
99d5372
fix for #334 and #317
OnnoEbbens Apr 17, 2024
ad64f3e
fix for #336
OnnoEbbens Apr 18, 2024
5587e4e
fix for the last fix
OnnoEbbens Apr 18, 2024
c41f7af
Small change to cache
bdestombe Apr 18, 2024
b5e23cc
remove duplicate stations from knmi data
OnnoEbbens Apr 18, 2024
98392f9
Merge pull request #337 from gwmod/cache-small-change
OnnoEbbens Apr 19, 2024
64605fa
Merge pull request #335 from gwmod/fix-for-#334
OnnoEbbens Apr 19, 2024
e581a42
remove confusing ci step
OnnoEbbens Apr 19, 2024
993e02f
add deprecation warning #254
OnnoEbbens Apr 19, 2024
367c1a9
typo
OnnoEbbens Apr 19, 2024
69ccac7
fixes for comments Bas
OnnoEbbens Apr 19, 2024
bef2118
Merge pull request #338 from gwmod/311-test-run-on-push-confusing
OnnoEbbens Apr 19, 2024
f8c229e
Add bottleneck to default packages
rubencalje May 10, 2024
0380026
Copy all files from nlmod.data.geotop in pyproject.toml
rubencalje May 10, 2024
ba81ff6
Creating new cache used full ds instead of reduced ds (#340)
bdestombe May 14, 2024
0796613
Add bottleneck also in documentation to required packages
rubencalje May 15, 2024
73a550f
Change version of dev branch
rubencalje May 15, 2024
3c23366
Cache: added shorthand for model ds attributes (#345)
bdestombe May 17, 2024
0a6394a
Added get_exe_path with more features (#347)
bdestombe May 25, 2024
c78976e
Github token needed for CI when downloading executables (#349)
bdestombe May 29, 2024
82b8e44
add animate method to cross section dataset class
OnnoEbbens Jun 10, 2024
f48d115
update docstring to include boundname
OnnoEbbens Jun 10, 2024
9aa73f4
improve animate and add plot_map_cs method
OnnoEbbens Jun 11, 2024
d252ce8
add examples to notebooks
OnnoEbbens Jun 11, 2024
491b39b
codacy fix
OnnoEbbens Jun 12, 2024
6ff7172
Remove delr and delc from ds (#346)
rubencalje Jun 17, 2024
e76ba79
Update regis.py
rubencalje Jun 17, 2024
4207435
another try...
rubencalje Jun 17, 2024
8fb859b
Merge pull request #351 from gwmod/animate_cross_section
OnnoEbbens Jun 17, 2024
704b92e
use https url for REGIS
OnnoEbbens Jun 17, 2024
d9515cd
Remove warning from nlmod.gwf.output.get_flow_lower_face
rubencalje Jun 20, 2024
0e424d9
Set netCDF4 version lower than 1.7.0
rubencalje Jun 20, 2024
cdb84dc
Simplify regis and geotop urls
rubencalje Jun 20, 2024
b7fb73f
Merge pull request #352 from gwmod/fix_regis_url
dbrakenhoff Jun 20, 2024
ce0fdf3
add check for time coord, if not default to None
dbrakenhoff Jun 27, 2024
f70f100
Patch auto-download executables (#354)
bdestombe Jun 27, 2024
60ead3d
add modelextent plot
dbrakenhoff Jun 27, 2024
ca1ef9f
Fix 02_surface_water.ipynb
rubencalje Jul 1, 2024
e808140
Minor changes to resample and regis
rubencalje Jul 1, 2024
5a740ef
Fix the animation of the cross-section in the documentation
rubencalje Jul 2, 2024
0c295be
Move methods from dims.reample to dims.grid and util
rubencalje Jul 2, 2024
ee6ed3e
Improve CI and some code cleanup (#358)
dbrakenhoff Jul 2, 2024
295623d
allow pathlib paths in write_and_run
dbrakenhoff Jul 2, 2024
6e12f99
Remove circular import
rubencalje Jul 2, 2024
9bf7df2
Merge branch 'dev' into add_modelextent_plot
rubencalje Jul 2, 2024
a04b0c6
sort imports
dbrakenhoff Jul 2, 2024
d2910f3
codacy stuff and import order of dims
rubencalje Jul 2, 2024
f46101c
Small improvements to notebooks
rubencalje Jul 2, 2024
2c228b6
Add codacy rules and replace one use of polygon_from_extent
rubencalje Jul 2, 2024
0224b30
Update resample.py
rubencalje Jul 2, 2024
fe8d2ca
docstring comments @OnnoEbbens
dbrakenhoff Jul 3, 2024
0366f8d
Set rotated to False in plot-methods
rubencalje Jul 3, 2024
ca6af64
Merge pull request #357 from gwmod/add_modelextent_plot
dbrakenhoff Jul 3, 2024
296cd26
remove deprecation message for set_ds_time
dbrakenhoff Jul 3, 2024
7b372d6
add ds_time_to_pandas_index
dbrakenhoff Jul 3, 2024
bbe77b8
fix UserWarning add_min_ahn_to_gdf()
dbrakenhoff Jul 3, 2024
87a3768
docs and logging utils
dbrakenhoff Jul 3, 2024
45c25be
docs and logging utils
dbrakenhoff Jul 3, 2024
c66bd7c
Improve examples
dbrakenhoff Jul 3, 2024
46eaa26
version v0.8
dbrakenhoff Jul 3, 2024
390e6c4
Merge branch 'main' into dev
dbrakenhoff Jul 3, 2024
202b824
add_min_ahn_to_gdf would error with use of ahn-download (without savi…
rubencalje Jul 4, 2024
73b18d8
fix examples:
dbrakenhoff Jul 4, 2024
ae76837
Add default CRS EPSG:28992 to GIS functions
dbrakenhoff Jul 4, 2024
41f5605
put back set_coords(index) for flox and suppressing warning
dbrakenhoff Jul 4, 2024
d9e7049
thank you codacy
dbrakenhoff Jul 4, 2024
31d3c06
Fix expired KNMI Data Platform API
ArtesiaWater Jul 4, 2024
f8f6953
last fixes
dbrakenhoff Jul 5, 2024
a9cce55
accept suggestion onno
dbrakenhoff Jul 5, 2024
39c83a5
Make sure surface water test does not fail for empty stages
rubencalje Jul 5, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 6 additions & 16 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,13 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.9]
python-version: [3.11]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

Expand All @@ -32,25 +32,15 @@ jobs:
python -m pip install --upgrade pip
pip install -e .[ci]

- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings.
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=80 --statistics

- name: Download executables needed for tests
shell: bash -l {0}
run: |
python -c "import nlmod; nlmod.util.download_mfbinaries()"

- name: Run notebooks
if: ${{ github.event_name == 'push' }}
run: |
py.test ./tests -m "not notebooks"

- name: Run tests only
if: ${{ github.event_name == 'pull_request' }}
env:
NHI_GWO_USERNAME: ${{ secrets.NHI_GWO_USERNAME}}
NHI_GWO_PASSWORD: ${{ secrets.NHI_GWO_PASSWORD}}
run: |
py.test ./tests -m "not notebooks"

Expand Down
12 changes: 7 additions & 5 deletions .github/workflows/python-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,24 @@ on:

jobs:
deploy:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.9'
python-version: '3.11'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install build setuptools wheel

- name: build binary wheel and a source tarball
run: |
python -m build --sdist --wheel --outdir dist/

- name: Publish a Python distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
Expand Down
2 changes: 2 additions & 0 deletions .prospector.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ pylint:
- too-many-branches
- too-many-statements
- logging-fstring-interpolation
- import-outside-toplevel
- implicit-str-concat

mccabe:
disable:
Expand Down
22 changes: 10 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,13 @@ groundwater models, makes models more reproducible and transparent.

The functions in `nlmod` have four main objectives:

1. Create and adapt the temporal and spatial discretization of a MODFLOW model using an xarray Dataset (`nlmod.dims`).
2. Download and read data from external sources, project this data on the modelgrid and add this data to an xarray Dataset (`nlmod.read`).
3. Use data in an xarray Dataset to build modflow packages for both groundwater flow and transport models using FloPy (`nlmod.sim`, `nlmod.gwf` and `nlmod.gwt` for Modflow 6 and `nlmod.modpath` for Modpath).
1. Create and adapt the temporal and spatial discretization of a MODFLOW model using an
xarray Dataset (`nlmod.dims`).
2. Download and read data from external sources, project this data on the modelgrid and
add this data to an xarray Dataset (`nlmod.read`).
3. Use data in an xarray Dataset to build modflow packages for both groundwater flow
and transport models using FloPy (`nlmod.sim`, `nlmod.gwf` and `nlmod.gwt` for
Modflow 6 and `nlmod.modpath` for Modpath).
4. Visualise modeldata in Python (`nlmod.plot`) or GIS software (`nlmod.gis`).

More information can be found on the documentation-website:
Expand Down Expand Up @@ -50,9 +54,10 @@ Install the module with pip:
* `dask`
* `colorama`
* `joblib`
* `bottleneck`

There are some optional dependecies, only needed (and imported) in a single method.
Examples of this are `bottleneck` (used in calculate_gxg), `geocube` (used in
Examples of this are `geocube` (used in
add_min_ahn_to_gdf), `h5netcdf` (used for hdf5 files backend in xarray), `scikit-image`
(used in calculate_sea_coverage). To install `nlmod` with the optional dependencies use:

Expand All @@ -65,11 +70,4 @@ notoriously hard to install on certain platforms. Please see the

## Getting started

If you are using `nlmod` for the first time you need to download the MODFLOW
executables. You can easily download these executables by running this Python code:

import nlmod
nlmod.download_mfbinaries()

After you've downloaded the executables you can run the Jupyter Notebooks in the
examples folder. These notebooks illustrate how to use the `nlmod` package.
Start with the Jupyter Notebooks in the examples folder. These notebooks illustrate how to use the `nlmod` package.
3 changes: 2 additions & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,11 @@
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
from nlmod import __version__
import os
import sys

from nlmod import __version__

sys.path.insert(0, os.path.abspath("."))


Expand Down
29 changes: 5 additions & 24 deletions docs/examples/00_model_from_scratch.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -20,28 +20,9 @@
"outputs": [],
"source": [
"import flopy as fp\n",
"import matplotlib.pyplot as plt\n",
"import nlmod\n",
"import numpy as np\n",
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"nlmod.util.get_color_logger(\"INFO\");"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"## Download MODFLOW-binaries\n",
"To run MODFLOW, we need to download the MODFLOW-excecutables. We do this with the following code:"
"import pandas as pd\n",
"\n",
"import nlmod"
]
},
{
Expand All @@ -50,8 +31,8 @@
"metadata": {},
"outputs": [],
"source": [
"if not nlmod.util.check_presence_mfbinaries():\n",
" nlmod.download_mfbinaries()"
"nlmod.util.get_color_logger(\"INFO\")\n",
"nlmod.show_versions()"
]
},
{
Expand Down
35 changes: 15 additions & 20 deletions docs/examples/01_basic_model.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,6 @@
"metadata": {},
"outputs": [],
"source": [
"import logging\n",
"import os\n",
"\n",
"import flopy\n",
"import geopandas as gpd\n",
"import matplotlib.pyplot as plt\n",
"import nlmod"
]
},
Expand All @@ -33,9 +27,8 @@
"metadata": {},
"outputs": [],
"source": [
"print(f\"nlmod version: {nlmod.__version__}\")\n",
"\n",
"nlmod.util.get_color_logger(\"INFO\")"
"nlmod.util.get_color_logger(\"INFO\")\n",
"nlmod.show_versions()"
]
},
{
Expand All @@ -44,19 +37,20 @@
"source": [
"## Create model\n",
"\n",
"With the code below we create a modflow model with the name 'IJmuiden'. This model has the following properties :\n",
"With the code below we create a modflow model with the name 'IJmuiden'. This model has the following properties:\n",
"\n",
"- an extent that covers part of the Northsea, Noordzeekanaal and the small port city IJmuiden.\n",
"- a structured grid based on the subsurface models [Regis](https://www.dinoloket.nl/regis-ii-het-hydrogeologische-model) and [Geotop](https://www.dinoloket.nl/detaillering-van-de-bovenste-lagen-met-geotop). The Regis layers that are not present within the extent are removed. In this case we use 'MSz1' as the bottom layer of the model. Use `nlmod.read.regis.get_layer_names()` to get all the layer names of Regis. All Regis layers below this layer are not used in the model. Geotop is used to replace the holoceen layer in Regis because there is no kh or kv defined for the holoceen in Regis. Part of the model is in the North sea. Regis and Geotop have no data there. Therefore the Regis and Geotop layers are extrapolated from the shore and the seabed is added using bathymetry data from [Jarkus](https://www.openearth.nl/rws-bathymetry/2018.html).\n",
"- a structured grid based on the subsurface models [Regis](https://www.dinoloket.nl/regis-ii-het-hydrogeologische-model) and [Geotop](https://www.dinoloket.nl/detaillering-van-de-bovenste-lagen-met-geotop). The Regis layers that are not present within the extent are removed. In this case we use 'MSz1' as the bottom layer of the model. Use `nlmod.read.regis.get_layer_names()` to get all the layer names of Regis. All Regis layers below this layer are not used in the model. Geotop is used to replace the Holocene layer in Regis because there is no kh or kv defined for the Holocene in Regis. Part of the model is in the North sea. Regis and Geotop have no data there. Therefore the Regis and Geotop layers are extrapolated from the shore and the seabed is added using bathymetry data from [Jarkus](https://www.openearth.nl/rws-bathymetry/2018.html).\n",
"- starting heads of 1 in every cell.\n",
"- the model is a steady state model of a single time step.\n",
"- the model is a steady state model with a single time step.\n",
"- big surface water bodies (Northsea, IJsselmeer, Markermeer, Noordzeekanaal) within the extent are added as a general head boundary. The surface water bodies are obtained from a [shapefile](..\\data\\shapes\\opp_water.shp).\n",
"- surface drainage is added using [ahn](https://www.ahn.nl) data and a default conductance of $1000 m^2/d$\n",
"- recharge is added using data from the [knmi](https://www.knmi.nl/nederland-nu/klimatologie/daggegevens) using the following steps:~~\n",
" 1. Check for each cell which KNMI weather and/or rainfall station is closest.\n",
" 2. Download the data for the stations found in 1. for the model period. For a steady state stress period the average precipitation and evaporation of 8 years before the stress period time is used.\n",
" 3. Combine precipitation and evaporation data from step 2 to create a recharge time series for each cell\n",
" 4. Add the timeseries to the model dataset and create the recharge package.\n",
"- constant head boundaries are added to the model edges in every layer. The starting head is used as constant head."
"- surface drainage is added using the Dutch DEM ([ahn](https://www.ahn.nl)) and a default conductance of $1000 m^2/d$\n",
"- recharge is added using data from [knmi](https://www.knmi.nl/nederland-nu/klimatologie/daggegevens) using the following steps:\n",
" 1. Check for each cell which KNMI weather and/or rainfall station is closest.\n",
" 2. Download the data for the stations found in 1. for the model period. For a steady state stress period the average precipitation and evaporation of 8 years before the stress period time is used.\n",
" 3. Combine precipitation and evaporation data from step 2 to create a recharge time series for each cell,\n",
" 4. Add the timeseries to the model dataset and create the recharge package.\n",
"- constant head boundaries are added to the model edges in every layer. The starting head is used as the specified head."
]
},
{
Expand Down Expand Up @@ -215,6 +209,7 @@
"source": [
"## Write and Run\n",
"Now that we've created all the modflow packages we need to write them to modflow files. You always have to write the modflow data to the model workspace before you can run the model. You can write the model files and run the model using the function `nlmod.sim.write_and_run)` as shown below. This function has two additional options:\n",
"\n",
"1. Write the model dataset to the disk if `write_ds` is `True`. This makes it easier and faster to load model data if you ever need it. \n",
"2. Write a copy of this Jupyter Notebook to the same directory as the modflow files if `nb_path` is the name of this Jupyter Notebook. It can be useful to have a copy of the script that created the modflow files, together with the files. "
]
Expand Down Expand Up @@ -250,7 +245,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Data from a model with a structured grid can be easily visualised using the model dataset. Below some examples"
"Data from a model with a structured grid can be easily visualised using the model dataset. Below are some examples:"
]
},
{
Expand Down
31 changes: 17 additions & 14 deletions docs/examples/02_surface_water.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"\n",
"This example notebook shows some how to add surface water defined in a GeoDataFrame to a MODFLOW model using the `nlmod` package.\n",
"\n",
"There are three water boards in the model area, of which we download seasonal data about the stage of the surface water. In this notebook we perform a steady-state run, in which the stage of the surface water is the mean of the summer and winter stage. For locations without a stage from the water board, we delineate information from a Digital Terrain Model, to set a stage. We assign a stage of 0.0 m NAP to the river Lek. to The surface water bodies in each cell are aggregated using an area-weighted method and added to the model as a river-package."
"There are three water boards in the model area, and we download seasonal data about the stage of the surface water for each. In this notebook we perform a steady-state run, in which the stage of the surface water is the mean of the summer and winter stage. For locations without a stage from the water board, we obtain information from a Digital Terrain Model near the surface water features, to estimate a stage. We assign a stage of 0.0 m NAP to the river Lek. The surface water bodies in each cell are aggregated using an area-weighted method and added to the model with the river-package."
]
},
{
Expand All @@ -25,12 +25,10 @@
"import os\n",
"\n",
"import flopy\n",
"import rioxarray\n",
"import matplotlib.pyplot as plt\n",
"import nlmod\n",
"from geocube.api.core import make_geocube\n",
"from functools import partial\n",
"from geocube.rasterize import rasterize_image"
"import rioxarray\n",
"\n",
"import nlmod"
]
},
{
Expand All @@ -40,9 +38,8 @@
"metadata": {},
"outputs": [],
"source": [
"print(f\"nlmod version: {nlmod.__version__}\")\n",
"\n",
"nlmod.util.get_color_logger(\"INFO\")"
"nlmod.util.get_color_logger(\"INFO\")\n",
"nlmod.show_versions()"
]
},
{
Expand Down Expand Up @@ -94,7 +91,7 @@
"if not os.path.isfile(fname_ahn):\n",
" ahn = nlmod.read.ahn.get_ahn4(extent, identifier=\"AHN4_DTM_5m\")\n",
" ahn.rio.to_raster(fname_ahn)\n",
"ahn = rioxarray.open_rasterio(fname_ahn, mask_and_scale=True)"
"ahn = rioxarray.open_rasterio(fname_ahn, mask_and_scale=True)[0]"
]
},
{
Expand All @@ -103,7 +100,7 @@
"metadata": {},
"source": [
"### Layer 'waterdeel' from bgt\n",
"As the source of the location of the surface water bodies we use the 'waterdeel' layer of the Basisregistratie Grootschalige Topografie (BGT). This data consists of detailed polygons, maintained by dutch government agencies (water boards, municipalities and Rijkswatrstaat)."
"As the source of the location of the surface water bodies we use the 'waterdeel' layer of the Basisregistratie Grootschalige Topografie (BGT). This data consists of detailed polygons, maintained by dutch government agencies (water boards, municipalities and Rijkswaterstaat)."
]
},
{
Expand Down Expand Up @@ -223,7 +220,7 @@
"metadata": {},
"source": [
"#### Save the data to use in other notebooks as well\n",
"We save the bgt-data to a GeoPackage file, so we can use the data in other notebooks with surface water as well"
"We save the bgt-data to a GeoPackage file, so we can use the data in other notebooks with surface water as well."
]
},
{
Expand Down Expand Up @@ -275,7 +272,13 @@
"\n",
"The `stage` and the `botm` columns are present in our dataset. The bottom resistance `c0` is rarely known, and is usually estimated when building the model. We will add our estimate later on.\n",
"\n",
"*__Note__: the NaN's in the dataset indicate that not all parameters are known for each feature. This is not necessarily a problem but this will mean some features will not be converted to model input.*"
"<div class=\"alert alert-info\">\n",
" \n",
"<b>Note:</b>\n",
"\n",
"The NaN's in the dataset indicate that not all parameters are known for each feature. This is not necessarily a problem but this will mean some features will not be converted to model input.\n",
" \n",
"</div>"
]
},
{
Expand Down Expand Up @@ -493,7 +496,7 @@
"xlim = ax.get_xlim()\n",
"ylim = ax.get_ylim()\n",
"gwf.modelgrid.plot(ax=ax)\n",
"ax.set_xlim(xlim[0], xlim[0] + ds.delr * 1.1)\n",
"ax.set_xlim(xlim[0], xlim[0] + nlmod.grid.get_delr(ds)[-1] * 1.1)\n",
"ax.set_ylim(ylim)\n",
"ax.set_title(f\"Surface water shapes in cell: {cid}\")"
]
Expand Down
Loading