Merge pull request #474 from PyPSA/rioxarray-to-envs

importing rioxarray instead of xarray to open rasterio file
This commit is contained in:
Fabian Neumann 2023-04-21 10:05:26 +02:00 committed by GitHub
commit 0c3868b6a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 15 additions and 11 deletions

View File

@ -287,11 +287,14 @@ dependencies:
- qt-main=5.15.8
- rasterio=1.3.4
- readline=8.1.2
- requests=2.28.2
- reretry=0.11.8
- rtree=1.0.1
- scikit-learn=1.2.1
- scipy=1.10.0
- requests=2.28.1
- retry=0.9.2
- rich=12.5.1
- rioxarray=0.13.3
- rtree=1.0.0
- s2n=1.0.10
- scikit-learn=1.1.1
- scipy=1.8.1
- scotch=6.0.9
- seaborn=0.12.2
- seaborn-base=0.12.2

View File

@ -29,6 +29,7 @@ dependencies:
- pandas>=1.4
- geopandas>=0.11.0
- xarray
- rioxarray
- netcdf4
- networkx
- scipy

View File

@ -172,7 +172,7 @@ rule build_ship_raster:
],
),
output:
RESOURCES + "shipdensity_raster.nc",
RESOURCES + "shipdensity_raster.tif",
log:
LOGS + "build_ship_raster.log",
resources:
@ -202,7 +202,7 @@ rule build_renewable_profiles:
)
),
ship_density=lambda w: (
RESOURCES + "shipdensity_raster.nc"
RESOURCES + "shipdensity_raster.tif"
if "ship_threshold" in config["renewable"][w.technology].keys()
else []
),

View File

@ -197,7 +197,7 @@ def convert_nuts2_to_regions(bio_nuts2, regions):
)
overlay[adjust_cols] = overlay[adjust_cols].multiply(overlay["share"], axis=0)
bio_regions = overlay.groupby("name").sum()
bio_regions = overlay.dissolve("name", aggfunc="sum")
bio_regions.drop(["area_nuts2", "share"], axis=1, inplace=True)

View File

@ -46,7 +46,7 @@ import logging
import os
import zipfile
import xarray as xr
import rioxarray
from _helpers import configure_logging
from build_natura_raster import determine_cutout_xXyY
@ -64,10 +64,10 @@ if __name__ == "__main__":
with zipfile.ZipFile(snakemake.input.ship_density) as zip_f:
zip_f.extract("shipdensity_global.tif")
with xr.open_rasterio("shipdensity_global.tif") as ship_density:
with rioxarray.open_rasterio("shipdensity_global.tif") as ship_density:
ship_density = ship_density.drop(["band"]).sel(
x=slice(min(xs), max(Xs)), y=slice(max(Ys), min(ys))
)
ship_density.to_netcdf(snakemake.output[0])
ship_density.rio.to_raster(snakemake.output[0])
os.remove("shipdensity_global.tif")