-
RalsGIS
IntegrationvonGISinRfürräumlicheAnalysenmitOpen-
Source-Software
Schratz,P.,Muenchow,J.,Brenning,A.
GISciencegroup,FSUJena
-
Outline1. WarumGISSoftwareintegrieren?
2. RalsGIS
3. RPaket RQGIS
4. RPaket RSAGA
5. RPaket RPyGeo
6. Zusammenfassung
2/36
-
1.WarumGISSoftwareintegrieren?
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
4/36
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
VieleeigenständigeAnwendungen/Bibliothekenexistieren
4/36
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
VieleeigenständigeAnwendungen/Bibliothekenexistieren
SpezialisierungaufbestimmtegeographischeBereiche
4/36
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
VieleeigenständigeAnwendungen/Bibliothekenexistieren
SpezialisierungaufbestimmtegeographischeBereiche
Verfügbarkeit/Nutzerfreundlichkeit
Nichtallehabenein(nutzerfreundliches)GraphicalUserInterface(GUI)
4/36
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
VieleeigenständigeAnwendungen/Bibliothekenexistieren
SpezialisierungaufbestimmtegeographischeBereiche
Verfügbarkeit/Nutzerfreundlichkeit
Nichtallehabenein(nutzerfreundliches)GraphicalUserInterface(GUI)
UnterschiedlicheDateiformate
4/36
-
WarumGISSoftwareintegrieren?
Problematik
DasAngebotimBereichderräumlichenAnalyseistsehrspezialisiert
VieleeigenständigeAnwendungen/Bibliothekenexistieren
SpezialisierungaufbestimmtegeographischeBereiche
Verfügbarkeit/Nutzerfreundlichkeit
Nichtallehabenein(nutzerfreundliches)GraphicalUserInterface(GUI)
UnterschiedlicheDateiformate
Plattformabhängig(WindowsUnix)
4/36
-
WarumGISSoftwareintegrieren?
Lösungsansatz
KombinationallerBibliotheken/GIS-AlgorithmenineinerUmgebung
5/36
-
WarumGISSoftwareintegrieren?
Lösungsansatz
KombinationallerBibliotheken/GIS-AlgorithmenineinerUmgebung
WaruminR?
NutzerfreundlicheProgrammiersprache
5/36
-
WarumGISSoftwareintegrieren?
Lösungsansatz
KombinationallerBibliotheken/GIS-AlgorithmenineinerUmgebung
WaruminR?
NutzerfreundlicheProgrammiersprache
StarkeCommunityvorhandenbeiProblemen(Mailinglisten,Stackoverflow)
5/36
-
WarumGISSoftwareintegrieren?
Lösungsansatz
KombinationallerBibliotheken/GIS-AlgorithmenineinerUmgebung
WaruminR?
NutzerfreundlicheProgrammiersprache
StarkeCommunityvorhandenbeiProblemen(Mailinglisten,Stackoverflow)
IntegrationderStärkenvonR
StatistischeAuswertung
ReproduzierbareAnalysen('literateprogramming'-> Rmarkdown )
Ralsstarkes'eigenständiges'GIS
5/36
-
2.RalsGIS
-
RalsGISMehrals100PaketemitGeo-Bezug(https://cran.r-project.org/web/views/Spatial.html)
Paket rgdal als'Motor'zumimportierenundexportierenvonGeodaten
7/36
https://cran.r-project.org/web/views/Spatial.html
-
RalsGISMehrals100PaketemitGeo-Bezug(https://cran.r-project.org/web/views/Spatial.html)
Paket rgdal als'Motor'zumimportierenundexportierenvonGeodaten
http://r-spatial.org//2016/11/29/openeo.html
7/36
https://cran.r-project.org/web/views/Spatial.htmlhttp://r-spatial.org//2016/11/29/openeo.html
-
Package sp / sf forvectorgeodata
Rikken,M.G.J&VanRijn,R.P.G.(1993)1
RalsGIS
[1]Rikkenetal.(1993):Soilpollutionwithheavymetals-aninquiryintospatialvariation,costofmappingandtheriskevaluationofcopper,cadmium,leadandzincinthefloodplainsofthemeusewestofstein.Dept.ofPhysicalGeography,UtrechtUniversity
8/36
-
Package sp / sf forvectorgeodata
Rikken,M.G.J&VanRijn,R.P.G.(1993)1
Package raster forrasterdata
http://www.worldclim.org/
RalsGIS
[1]Rikkenetal.(1993):Soilpollutionwithheavymetals-aninquiryintospatialvariation,costofmappingandtheriskevaluationofcopper,cadmium,leadandzincinthefloodplainsofthemeusewestofstein.Dept.ofPhysicalGeography,UtrechtUniversity
8/36
http://www.worldclim.org/
-
RalsGISWennman GIS alseinSystemzurAnalyse,Manipulation,SpeicherungundVisualisierunggeopraphischerDatendefiniert1,sokönntemansagen,dassRbereitseinvollwertiges GIS ist.
[1]Longleyetal.(2011):GeographicInformationSystemsandScience.Wiley.http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html)
9/36
http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html
-
AberwasistmitDingenwie...
(Geo)-Datenbanken
Digitalisierung
ManuelleKorrekturvonräumlichenVersätzen
RalsGISWennman GIS alseinSystemzurAnalyse,Manipulation,SpeicherungundVisualisierunggeopraphischerDatendefiniert1,sokönntemansagen,dassRbereitseinvollwertiges GIS ist.
[1]Longleyetal.(2011):GeographicInformationSystemsandScience.Wiley.http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html)
9/36
http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html
-
AberwasistmitDingenwie...
(Geo)-Datenbanken
Digitalisierung
ManuelleKorrekturvonräumlichenVersätzen
icon-icons.com
RalsGISWennman GIS alseinSystemzurAnalyse,Manipulation,SpeicherungundVisualisierunggeopraphischerDatendefiniert1,sokönntemansagen,dassRbereitseinvollwertiges GIS ist.
[1]Longleyetal.(2011):GeographicInformationSystemsandScience.Wiley.http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html)
9/36
file:///Users/pjs/Servers/GIServer/home/patrick/PhD/R/presentations/AK-TQMG/icon-icons.comhttp://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html
-
AberwasistmitDingenwie...
(Geo)-Datenbanken
Digitalisierung
ManuelleKorrekturvonräumlichenVersätzen
Editor-WerkzeugleisteArcGIS
RalsGISWennman GIS alseinSystemzurAnalyse,Manipulation,SpeicherungundVisualisierunggeopraphischerDatendefiniert1,sokönntemansagen,dassRbereitseinvollwertiges GIS ist.
[1]Longleyetal.(2011):GeographicInformationSystemsandScience.Wiley.http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html)
9/36
http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html
-
AberwasistmitDingenwie...
(Geo)-Datenbanken
Digitalisierung
ManuelleKorrekturvonräumlichenVersätzen
http://help.arcgis.com/
RalsGISWennman GIS alseinSystemzurAnalyse,Manipulation,SpeicherungundVisualisierunggeopraphischerDatendefiniert1,sokönntemansagen,dassRbereitseinvollwertiges GIS ist.
[1]Longleyetal.(2011):GeographicInformationSystemsandScience.Wiley.http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html)
9/36
http://help.arcgis.com/http://eu.wiley.com/WileyCDA/WileyTitle/productCd-EHEP001475.html
-
RalsGISAberwasistmitDingenwie...
AufwendigenRechenoperationen(z.B. Dissolve vielerPolygone)?
10/36
-
AberwasistmitDingenwie...
FehlendenAlgorithmen
SAGA
GRASS
QGIS
LiDAR
OrfeoToolbox
TauDEM
RalsGIS
11/36
-
RPaket RSAGA :
Authors:Brenning,A.&Bangs,D.PackagevignetteVeröffentlichung:2007
RPaket rgrass7 :
Authors:Bivand,R.,Krug,R.,Neteler,M.,Jeworutzki,S.
RPaket spgrass6 :
Authors:Bivand,R.,Krug,R.,Neteler,M.
RalsGISR-GISIntegration
12/36
https://cran.r-project.org/web/packages/RSAGA/index.htmlhttps://cran.r-project.org/web/packages/RSAGA/vignettes/RSAGA-landslides.pdfhttps://cran.r-project.org/web/packages/rgrass7/index.htmlhttps://cran.r-project.org/web/packages/spgrass6/index.html
-
RPaket RQGIS :
Authors:Muenchow,J.,Schratz,P.PackagevignetteVeröffentlichung:2016
RPaket RPyGeo :
Authors:Brenning,A.Veröffentlichung:2011Wirdderzeitaktualisiert
RalsGISR-GISIntegration
13/36
https://cran.r-project.org/web/packages/RQGIS/index.htmlhttps://cran.r-project.org/web/packages/RQGIS/vignettes/install_guide.htmlhttps://cran.r-project.org/web/packages/RPyGeo/index.html
-
3.RPaketRQGIS
-
RQGISInterfacefürdasamweitestenverbreitetopen-sourceDesktopGIS
15/36
-
RQGISInterfacefürdasamweitestenverbreitetopen-sourceDesktopGIS
ZugangzuQGISeigenenGeoalgorithmen
15/36
-
RQGISInterfacefürdasamweitestenverbreitetopen-sourceDesktopGIS
ZugangzuQGISeigenenGeoalgorithmen
ZugangzuallenAlgorithmen,dieQGISintegriert
SAGAGRASSGDALTauDEMOrfeoToolboxLiDARtools
RNutzerkönneninihrergewohntenArbeitsumgebungbleiben
15/36
-
RQGISInterfacefürdasamweitestenverbreitetopen-sourceDesktopGIS
ZugangzuQGISeigenenGeoalgorithmen
ZugangzuallenAlgorithmen,dieQGISintegriert
SAGAGRASSGDALTauDEMOrfeoToolboxLiDARtools
RNutzerkönneninihrergewohntenArbeitsumgebungbleiben
'Convenience'FunktionenwiezumBeispiel open_help() zumöffnenderQGIS/GRASS/SAGAHilfe
15/36
-
RQGISZugriffüberQGISAPI-> processing Modul
16/36
-
library("RQGIS")
qgis_env
-
##$elevation##[1]"None"####$format##[1]"0"####$precision##[1]"0"####$`-a`##[1]"True"####$zscale##[1]"1.0"####$min_slope##[1]"0.0"####$GRASS_REGION_PARAMETER##[1]"\"None\""####$GRASS_REGION_CELLSIZE_PARAMETER##[1]"0.0"
##$slope##[1]"None"####$aspect##[1]"None"####$pcurvature##[1]"None"####$tcurvature##[1]"None"####$dx##[1]"None"####$dy##[1]"None"####$dxx##[1]"None"####$dyy##[1]"None"####$dxy##[1]"None"
RQGISget_args_man() :GibtalleParametereinerFunktionzurückundzeigtdie'default'Wertean
get_args_man(alg="grass7:r.slope.aspect",options=TRUE,qgis_env=qgis_env)
18/36
-
data("dem")params$elevation
-
4.RPaketRSAGA
-
RSAGAKombiniertdieStärkenvonR(statistischeAuswertung)undSAGA(Oberflächenanalyse)
21/36
-
RSAGAKombiniertdieStärkenvonR(statistischeAuswertung)undSAGA(Oberflächenanalyse)
library("RSAGA",quietly=TRUE)rsaga.env()[1:5]
##$workspace##[1]"."####$cmd##[1]"saga_cmd"####$path##[1]"/usr/local/bin"####$modules##[1]"/usr/local/lib/saga"####$version##[1]"2.2.2"
21/36
-
RSAGAGeoprozessierungsumgebung-> rsaga.env()
AuflistungderSAGAStrukturmitInformationenüberArbeitsverzeichnis,SAGA-Programmverzeichnis,verfügbarenModulenetc.
22/36
-
RSAGAGeoprozessierungsumgebung-> rsaga.env()
AuflistungderSAGAStrukturmitInformationenüberArbeitsverzeichnis,SAGA-Programmverzeichnis,verfügbarenModulenetc.
Geoprozessor-> rsaga.geoprocessor()
'Workhorse'FunktionwelcheSAGAaufruft( saga_cmd )undZugangzuallenSAGAModulenbietet
22/36
-
RSAGAGeoprozessierungsumgebung-> rsaga.env()
AuflistungderSAGAStrukturmitInformationenüberArbeitsverzeichnis,SAGA-Programmverzeichnis,verfügbarenModulenetc.
Geoprozessor-> rsaga.geoprocessor()
'Workhorse'FunktionwelcheSAGAaufruft( saga_cmd )undZugangzuallenSAGAModulenbietet
LokaleundfokaleFunktionen(geschriebeninR)
z.B. multi.focal.function() , grid.predict()
22/36
-
RSAGAGeoprozessierungsumgebung-> rsaga.env()
AuflistungderSAGAStrukturmitInformationenüberArbeitsverzeichnis,SAGA-Programmverzeichnis,verfügbarenModulenetc.
Geoprozessor-> rsaga.geoprocessor()
'Workhorse'FunktionwelcheSAGAaufruft( saga_cmd )undZugangzuallenSAGAModulenbietet
LokaleundfokaleFunktionen(geschriebeninR)
z.B. multi.focal.function() , grid.predict()
Hilfsunktionen(geschriebeninR)
z.B. pick.from.ascii.grid()
22/36
-
RSAGABeispiel:AbleitungderHangneigung,AusrichtungundKrümmungeinesHöhenmodells
RSAGA kommuniziertmitdemKommandozeilen-Interpretervon SAGA-GIS .Funktionsaufrufein RSAGA folgeneinerbestimmtenReihenfolge
rsaga.geoprocessor(lib="ta_morphometry",module="Slope,Aspect,Curvature",param=list(ELEVATION="dem.sgrd"),SLOPE="slope.sgrd"))
BestimmteFunktionenkönnenauchüberhigh-level rsaga.* Funktionenaufgerufenwerden
rsaga.slope(in.dem="dem",out.slope="slope")
23/36
-
rsaga.get.libraries()[1:60]
##[1]"climate_tools""contrib_perego"##[3]"db_odbc""docs_html"##[5]"docs_pdf""garden_3d_viewer"##[7]"garden_fractals""garden_games"##[9]"garden_learn_to_program""garden_webservices"##[11]"grid_analysis""grid_calculus_bsl"##[13]"grid_calculus""grid_filter"##[15]"grid_gridding""grid_spline"##[17]"grid_tools""grid_visualisation"##[19]"imagery_classification""imagery_maxent"##[21]"imagery_photogrammetry""imagery_segmentation"##[23]"imagery_svm""imagery_tools"##[25]"io_esri_e00""io_gdal"##[27]"io_gps""io_grid_grib2"##[29]"io_grid_image""io_grid"##[31]"io_shapes_dxf""io_shapes"##[33]"io_table""io_virtual"##[35]"pj_georeference""pj_proj4"##[37]"pointcloud_tools""pointcloud_viewer"##[39]"shapes_grid""shapes_lines"##[41]"shapes_points""shapes_polygons"##[43]"shapes_tools""shapes_transect"##[45]"sim_cellular_automata""sim_ecosystems_hugget"##[47]"sim_erosion""sim_fire_spreading"##[49]"sim_hydrology""sim_ihacres"##[51]"sim_rivflow""statistics_grid"##[53]"statistics_kriging""statistics_points"##[55]"statistics_regression""ta_channels"##[57]"ta_compound""ta_hydrology"##[59]"ta_lighting""ta_morphometry"
rsaga.get.modules("ta_morphometry")[[1]][,-3]
##codename##10Slope,Aspect,Curvature##21ConvergenceIndex##32ConvergenceIndex(SearchRadius)##43SurfaceSpecificPoints##54CurvatureClassification##65Hypsometry##76RealSurfaceArea##87MorphometricProtectionIndex##98MultiresolutionIndexofValleyBottomFlatness(MRVBF)##109DownslopeDistanceGradient##1110MassBalanceIndex##1211EffectiveAirFlowHeights##1312DiurnalAnisotropicHeating##1413LandSurfaceTemperature##1514RelativeHeightsandSlopePositions##1615WindEffect(Windward/LeewardIndex)##1716TerrainRuggednessIndex(TRI)##1817VectorRuggednessMeasure(VRM)##1918TopographicPositionIndex(TPI)##2019TPIBasedLandformClassification##2120TerrainSurfaceTexture##2221TerrainSurfaceConvexity##2322TerrainSurfaceClassification(IwahashiandPike)##2423MorphometricFeatures##2524ValleyandRidgeDetection(TopHatApproach)##2625FuzzyLandformElementClassification##2726UpslopeandDownslopeCurvature##2827WindExpositionIndex
RSAGA
EineÜbersichtallerverfügbaren"libraries/modules"istmit rsaga.get.libraries()oder rsaga.get.modules() möglich:
24/36
-
RSAGAKombinationvonRundSAGA
Annahme:AngepasstesstatistischesModell,z.B.GeneralisiertesLinearesModell(GLM)inR.
25/36
-
RSAGAKombinationvonRundSAGA
Annahme:AngepasstesstatistischesModell,z.B.GeneralisiertesLinearesModell(GLM)inR.
Ziel:VorhersagevonHagelauftreten(Wahrscheinlichkeitvon0-1)mitTemperatur,NiederschlagundsolarerEinstrahlungalsPrädiktorenfüreineganzeRegion
25/36
-
RSAGAKombinationvonRundSAGA
Annahme:AngepasstesstatistischesModell,z.B.GeneralisiertesLinearesModell(GLM)inR.
Ziel:VorhersagevonHagelauftreten(Wahrscheinlichkeitvon0-1)mitTemperatur,NiederschlagundsolarerEinstrahlungalsPrädiktorenfüreineganzeRegion
InformationenvonTemperatur,NiederschlagundsolarerEinstrahlungistinRasterDateienvorhanden
25/36
-
RSAGAKombinationvonRundSAGA
26/36
-
RSAGAKombinationvonRundSAGA
Annahme:AngepasstesstatistischesModell,z.B.GeneralisiertesLinearesModell(GLM)inR.
Ziel:VorhersagevonHagelauftreten(Wahrscheinlichkeitvon0-1)mitTemperatur,NiederschlagundsolarerEinstrahlungalsPrädiktorenfüreineganzeRegion(=logistischeRegression)
InformationenvonTemperatur,NiederschlagundsolarerEinstrahlungistinRasterDateienvorhanden
Mit multi.local.function() kanneinModellinRdirektaufPrädiktoren,welcheinRasterDateienvorliegen,vorhergesagtwerden
27/36
-
RSAGAKombinationvonRundSAGA
multi.local.function() :AnwendungeinerR-FunktionaufmehrereRaster
28/36
-
RSAGAKombinationvonRundSAGA
multi.local.function() :AnwendungeinerR-FunktionaufmehrereRaster
AnpassendesModellsinR:
library(stats)fit
-
RSAGAoderRQGIS?!
ProRQGIS
RQGISistmit find_algorithms() und get_args_man() nutzerfreundlicheralsRSAGA.Hiermüssenerstdie"libraries"( rsaga.get.libraries() ),danndie"modules"( rsaga.get.modules() )unddannnochdie"usage"( rsaga.get.usage() )gefundenwerden.
29/36
-
RSAGAoderRQGIS?!
ProRQGIS
RQGISistmit find_algorithms() und get_args_man() nutzerfreundlicheralsRSAGA.Hiermüssenerstdie"libraries"( rsaga.get.libraries() ),danndie"modules"( rsaga.get.modules() )unddannnochdie"usage"( rsaga.get.usage() )gefundenwerden.
BeiderVerwendungvonRQGISmussnureinRPaketverwendetwerden,umQGIS+SAGA+GRASS+GDAL+...Algorithmenzuverwenden(anstatt rgrass7und RSAGA ).
29/36
-
RSAGAoderRQGIS?!
ProRQGIS
RQGISistmit find_algorithms() und get_args_man() nutzerfreundlicheralsRSAGA.Hiermüssenerstdie"libraries"( rsaga.get.libraries() ),danndie"modules"( rsaga.get.modules() )unddannnochdie"usage"( rsaga.get.usage() )gefundenwerden.
BeiderVerwendungvonRQGISmussnureinRPaketverwendetwerden,umQGIS+SAGA+GRASS+GDAL+...Algorithmenzuverwenden(anstatt rgrass7und RSAGA ).
PRORSAGA
RSAGAhatdenVorteil,dasseszusätzlicheStatistikfunktionenbietet(z.b.multi.local.function() ).
29/36
-
RSAGAoderRQGIS?!
ProRQGIS
RQGISistmit find_algorithms() und get_args_man() nutzerfreundlicheralsRSAGA.Hiermüssenerstdie"libraries"( rsaga.get.libraries() ),danndie"modules"( rsaga.get.modules() )unddannnochdie"usage"( rsaga.get.usage() )gefundenwerden.
BeiderVerwendungvonRQGISmussnureinRPaketverwendetwerden,umQGIS+SAGA+GRASS+GDAL+...Algorithmenzuverwenden(anstatt rgrass7und RSAGA ).
PRORSAGA
RSAGAhatdenVorteil,dasseszusätzlicheStatistikfunktionenbietet(z.b.multi.local.function() ).
RSAGAkannSAGAFunktionenparallelausführen(siehe"parallel"Argumentvon rsaga.env() )
29/36
-
RSAGAoderRQGIS?!
ProRQGIS
RQGISistmit find_algorithms() und get_args_man() nutzerfreundlicheralsRSAGA.Hiermüssenerstdie"libraries"( rsaga.get.libraries() ),danndie"modules"( rsaga.get.modules() )unddannnochdie"usage"( rsaga.get.usage() )gefundenwerden.
BeiderVerwendungvonRQGISmussnureinRPaketverwendetwerden,umQGIS+SAGA+GRASS+GDAL+...Algorithmenzuverwenden(anstatt rgrass7und RSAGA ).
PRORSAGA
RSAGAhatdenVorteil,dasseszusätzlicheStatistikfunktionenbietet(z.b.multi.local.function() ).
RSAGAkannSAGAFunktionenparallelausführen(siehe"parallel"Argumentvon rsaga.env() )
RSAGAbietet"Vereinfachungsfunktionen"fürvieleSAGAAlgorithmen,z.b.rsaga.slope() .
29/36
-
5.RPaketRPyGeo
-
RPyGeo
Führt ArcGIS GeoprozessierunginRaus
31/36
-
RPyGeo
Führt ArcGIS GeoprozessierunginRaus
Ruft ArcGIS nichtdirektaufsonderngeneriertPythonCode,derwiederumvonArcGIS ausgeführtwird
31/36
-
RPyGeo
Führt ArcGIS GeoprozessierunginRaus
Ruft ArcGIS nichtdirektaufsonderngeneriertPythonCode,derwiederumvonArcGIS ausgeführtwird
LäuftnurunterWindows(wieArcGIS)
31/36
-
RPyGeo
Führt ArcGIS GeoprozessierunginRaus
Ruft ArcGIS nichtdirektaufsonderngeneriertPythonCode,derwiederumvonArcGIS ausgeführtwird
LäuftnurunterWindows(wieArcGIS)
ImGrundeein"proofofprinciple"inklusiveeinigerzusätzlicherR-Funktionenfür ArcGIS Anwendungen
31/36
-
RPyGeo
Führt ArcGIS GeoprozessierunginRaus
Ruft ArcGIS nichtdirektaufsonderngeneriertPythonCode,derwiederumvonArcGIS ausgeführtwird
LäuftnurunterWindows(wieArcGIS)
ImGrundeein"proofofprinciple"inklusiveeinigerzusätzlicherR-Funktionenfür ArcGIS Anwendungen
Wenigerzuverlässigals RSAGA aufgrundderoftunverständlichen/unglücklichen ArcGIS Fehlermeldungen
31/36
-
RPyGeoDieArbeitsumgebungistin rpygeo.env festgelegtundkannmit rpygeo.build.env()modifiziertwerden.
$modules[1]"arcgisscripting"
$init[1]"gp=arcgisscripting.create()"
$workspaceNULL
$cellsizeNULL
$extentNULL
$maskNULL
$overwriteoutput[1]0
$extensionsNULL
$python.path[1]"C:\\software\\Python24"
$python.command[1]"python.exe"
32/36
-
RPyGeoBeispiel:AbleitungvonHangneigung,HangausrichtungundKrümmungeinesHöhenmodells( dem )ineinerFunktion
#AllowArcGIStooverwriteexistingdatasets:rpygeo.env$overwriteoutput=1
rpygeo.geoprocessor("Slope_sa('dem','slope')","Aspect_sa('dem','aspect')","Hillshade_sa('dem','hshd')")
Bemerkungen
Dasdurch rpygeo.geoprocessor() erstelltePythonSkript,welchesden ArcGISworkspaceerstelltunddieErweiterungenaktiviert,machtdieFunktionrelativineffizient
JedochspartmanerheblichZeit,danichtzwischendreiAnwendungen( ArcGIS , Python , R )undzweiProgrammiersprachen( Python & R )gewechseltwerdenmuss
33/36
-
6.Zusammenfassung
-
Zusammenfassung(RalsGIS/GISIntegration)
Pro
RkannalseigenesGISverwendetwerden( raster , sp , sf , rgeos , rgdal )
35/36
-
Zusammenfassung(RalsGIS/GISIntegration)
Pro
RkannalseigenesGISverwendetwerden( raster , sp , sf , rgeos , rgdal )
ReproduzierbareArbeitsweisedurch'Skripting'
35/36
-
Zusammenfassung(RalsGIS/GISIntegration)
Pro
RkannalseigenesGISverwendetwerden( raster , sp , sf , rgeos , rgdal )
ReproduzierbareArbeitsweisedurch'Skripting'
IntegrationvonGeoalgorithmenverschiedensterGISSystememöglich
35/36
-
Zusammenfassung(RalsGIS/GISIntegration)
Pro
RkannalseigenesGISverwendetwerden( raster , sp , sf , rgeos , rgdal )
ReproduzierbareArbeitsweisedurch'Skripting'
IntegrationvonGeoalgorithmenverschiedensterGISSystememöglich
ZusätzlicheFunktionenallerGISIntegrationspaketeinR,welcheArbeitsschritteerleichtern
Con
EffizienzverlustbeiderProzessierung,daintegrierteAlgorithmennurindirektangesprochenwerdenkönnen
35/36
-
Zusammenfassung(RalsGIS/GISIntegration)
Pro
RkannalseigenesGISverwendetwerden( raster , sp , sf , rgeos , rgdal )
ReproduzierbareArbeitsweisedurch'Skripting'
IntegrationvonGeoalgorithmenverschiedensterGISSystememöglich
ZusätzlicheFunktionenallerGISIntegrationspaketeinR,welcheArbeitsschritteerleichtern
Con
EffizienzverlustbeiderProzessierung,daintegrierteAlgorithmennurindirektangesprochenwerdenkönnen
ProblematikbeiqualitativerDatenkorrektur/inspektion(Stichwort:GUI)
35/36
-
ContactTwitter:@pjs_228
Web:https://pat-s.github.io
Folienhttps://pat-s.github.io/talk/AK-TQMG-2017/
Erstelltmitxaringanundpräsentiertmitpdfpc.
36/36
https://twitter.com/pjs_228https://pat-s.github.io/https://pat-s.github.io/talk/AK-TQMG-2017/https://github.com/yihui/xaringanhttps://github.com/pdfpc/pdfpc