diff --git a/u4py/addons/web_services.py b/u4py/addons/web_services.py index 38c2cdcb726688edabd6eb6bf5bfe06453eb09e7..38cef918da35405fb318150e1c1ea0e992044a9a 100644 --- a/u4py/addons/web_services.py +++ b/u4py/addons/web_services.py @@ -236,8 +236,7 @@ def _save_features( gdf = gp.read_file(geojson).to_crs("EPSG:32632") if len(region) > 0: gdf = gdf.clip(region) - if len(gdf) > 0: - gdf.to_file(out_fname + ".gpkg") + gdf.to_file(out_fname + ".gpkg") return gdf diff --git a/u4py/plotting/plots.py b/u4py/plotting/plots.py index bcb8c2ced089a92568ff12e3c94df6630aa793a6..32cd51fa4fec84b8940a148e7e262c49de474277 100644 --- a/u4py/plotting/plots.py +++ b/u4py/plotting/plots.py @@ -602,6 +602,41 @@ def geology_map( suffix=f"_{row[1].group:05}", out_folder=shp_path, ) + hydro_pts = u4web.query_hlnug( + "geologie/gk25/MapServer", + "Hydrogeologie (Punktdaten)", + region=region, + suffix=f"_hygpts_{row[1].group:05}", + out_folder=shp_path, + ) + nass = u4web.query_hlnug( + "geologie/gk25/MapServer", + "Nassstellen", + region=region, + suffix=f"_nass_{row[1].group:05}", + out_folder=shp_path, + ) + water = u4web.query_hlnug( + "geologie/gk25/MapServer", + "Gewässer", + region=region, + suffix=f"_water_{row[1].group:05}", + out_folder=shp_path, + ) + geo_pts = u4web.query_hlnug( + "geologie/gk25/MapServer", + "Geologie (Punktdaten)", + region=region, + suffix=f"_gepts_{row[1].group:05}", + out_folder=shp_path, + ) + bohr = u4web.query_hlnug( + "geologie/bohrdatenportal/MapServer", + "Archivbohrungen, Endteufe [m]", + region=region, + suffix=f"_bohr_{row[1].group:05}", + out_folder=shp_path, + ) if len(geology_data) > 0: # Get symbology and fill legend entry lists @@ -698,6 +733,17 @@ def geology_map( if len(fault_data) > 0: fault_data.plot(ax=ax, color="k") + if not hydro_pts.empty: + hydro_pts.plot(ax=ax, color="b") + if not nass.empty: + nass.plot(ax=ax, color="b") + if not water.empty: + water.plot(ax=ax, color="c") + if not geo_pts.empty: + geo_pts.plot(ax=ax, color="r") + if not bohr.empty: + bohr.plot(ax=ax) + # Formatting and other stuff u4plotfmt.add_scalebar(ax=ax, width=plot_buffer * 4) u4ax.add_basemap( diff --git a/u4py/scripts/gis_workflows/PostProcess_ClassifiedShapes.py b/u4py/scripts/gis_workflows/PostProcess_ClassifiedShapes.py index 4f3cfea412735c28f021344763ed03e698d25aca..ad33737ce11e5a0bd1100cc33da30237be2d2ec1 100644 --- a/u4py/scripts/gis_workflows/PostProcess_ClassifiedShapes.py +++ b/u4py/scripts/gis_workflows/PostProcess_ClassifiedShapes.py @@ -24,8 +24,8 @@ import u4py.utils.projects as u4proj def main(): project = u4proj.get_project( proj_path=Path( - # "~/Documents/umwelt4/PostProcess_ClassifiedShapesHLNUG.u4project" - "~/Documents/umwelt4/PostProcess_ClassifiedShapes.u4project" + "~/Documents/umwelt4/PostProcess_ClassifiedShapesHLNUG.u4project" + # "~/Documents/umwelt4/PostProcess_ClassifiedShapes.u4project" ).expanduser(), required=[ "base_path", @@ -39,31 +39,28 @@ def main(): overwrite = False use_filtered = False use_parallel = False - generate_plots = False - overwrite_plots = False + generate_plots = True + overwrite_plots = True generate_document = True single_report = False - is_hlnug = False + is_hlnug = True if is_hlnug: - out_format = "docx" u4plots.GLOBAL_TYPES = ["png"] - else: - out_format = "pdf" # Setting up names of report - report_title = "Große Bewegungsanomalien in Hessen" - report_subtitle = ( - "Anomalien mit mindestens 20000\,m\\textsuperscript{3} Volumenänderung" - ) - report_suffix = "_onlyLarge" + # report_title = "Große Bewegungsanomalien in Hessen" + # report_subtitle = ( + # "Anomalien mit mindestens 20000\,m\\textsuperscript{3} Volumenänderung" + # ) + # report_suffix = "_onlyLarge" # report_title = "Bewegungsanomalien in Hessen" # report_subtitle = "Anomalien in der Nähe bekannter Geogefahren" # report_suffix = "_hazard" - # report_title = "Rutschungsdatenbank Hessen" - # report_subtitle = "nach HLNUG" - # report_suffix = "_hlnug" + report_title = "Rutschungsdatenbank Hessen" + report_subtitle = "nach HLNUG" + report_suffix = "_hlnug" # Setting up paths output_path = os.path.join( @@ -106,6 +103,7 @@ def main(): else: if not os.path.exists(cls_shp_fp_filtered) or overwrite: gdf_filtered = gp.read_file(class_shp_fp) + gdf_filtered = gdf_filtered[:20] gdf_filtered = reverse_geolocate( gdf_filtered, project["paths"]["results_path"] ) @@ -125,6 +123,7 @@ def main(): dem_path, contour_path, overwrite_plots, + report_suffix, ) for row in gdf_filtered.iterrows() ] @@ -256,6 +255,7 @@ def map_worker( dem_path: os.PathLike, contour_path: os.PathLike, overwrite: bool, + suffix: str, ): """Calls the various plotting and reporting functions. @@ -344,7 +344,9 @@ def map_worker( overwrite=overwrite, ) shp_path = os.path.join( - project["paths"]["places_path"], "Classifier_shapes", "Web_Queries" + project["paths"]["places_path"], + "Classifier_shapes", + "Web_Queries" + suffix, ) u4plots.geology_map( row,