SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Automation in
ArcGIS using
Arcpy

Rui Rua
Geodata As
Presentation topics

 In this presentation I will talk about:
 –   How automation can be used to execute some geodatabase
     tasks;
 –   Python, ArcPy and its interaction with the geodatabase;
 –   Use cases.
What can we use automation for with
  geodatabases?

 In a general way, we use automation with geodatabases to:
 – Explore geodatabase content;
 – Simplify the execution of frequent administration tasks:
        • Create indexes;
        • Set privileges.
 – Implement data workflows:
        • conversion;
        • distribution;
How can automation be done?

 Automation of these tasks can be done using the Python
 programming language.
 Why Python?
 – Simple and easy to learn;
 – Widely adopted and well documented;
 – Powerfull, with many available built-in and external modules;
 – Fast to implement.
How can python be used with Arcgis and the
  geodatabase?

 The use of Python with Arcgis and the geodatabase is
 simplified by the fact that:
 –   Python is available by default with all ArcGis 9.X and 10.X
     Desktop installations;
 –   ‘Coding’ can be done using ArcGis Desktop ‘Python Window’ or
     one of the many development environments available:
         •   Wingware
         •   pyDev
         •   or even Notepad++
How can python be used with Arcgis and the
  geodatabase?
 –   All the interaction with the geodatabase, feature classes, rasters
     or even the mxds is done through a single python package,
     named ArcPy – and not with a vast library, making it easy to
     access the right function or geoprocessing tool.
 –   If needed, in addition, specific modules provide a direct interaction
     with the databases themselves:
         • cx_oracle for Oracle;
         • pymssql for SQL Server.
What is ArcPy?

 This means that most of the time while scripting we will be
 using ArcPy, which is:
 – ESRIs python package for ArcGis 10 products - a set of modules,
   classes and functions;
 – ‘Upgraded’ from Arcgis version 9.X ‘arcgisscripting’.

 ArcPy is divided in a small number of modules, with
 names familiar to all ArcGis users:
 – Mapping (to interact with mxds);
 – Geostatistical analyst;
 – Spatial analyst.
What is arcpy main purpose then?

 ArcPy main purpose then is to:
 – provide easy programming access to all common data structures,
   geoprocessing tools and map documents (.mxd);
 – Simplify the execution of repetitive manual tasks by using scripts
   that are relatively fast to implement and that can be runned over
   and over.
Whats needed to use automation with the
  geodatabase?
 This means that to use automation with the geodatabase
 we need:
 – Good understanding of geodatabases;
 – Learn general python concepts and the language itself;
 – Become familiar with the ArcPy package.

 An easy way to start is to use both:
 – Geoprocessing tools help;
 – ArcPy page.
Use cases :

 To demonstrate how ArcPy interacts with the
 geodatabase, we’ll look into some examples where we
 use:
 –   functions to explore the geodatabase;
 –   geoprocessing tools to automate administrative tasks;
 –   Both functions and geoprocessing tools to implement a ‘data
     distribution’ workflow.
Use case #1 - explore the geodatabase :

 In the first case we will see that ArcPy can be used to
 explore geodatabase objects and the data itself.
 It has its own functions to List:
 –   Datasets;
 –   Feature class or tables;
 –   Fields;
 –   or Rasters.
Use case #1 - explore the geodatabase :

 It also has some specific functions to:
 –   ‘Describe’ the data, as the ones used to:

         •   Get a feature class spatial reference;
         •   or to Check if its versioned;
 –   Read and Write data, allowing us to:
         •   Get attribute values;
         •   Update or insert features.
Use case #2 – administrative tasks:

 In this second example we will see how Arcpy can be
 used to run administrative tasks on datasets or feature
 classes.
 This can be done by using standard geoprocessing
 tools, as we know them in ArcToolbox:
 –   Create or remove indexes;
 –   Set privileges;
Use case #3 – automate workflow

 In this third example we will see how ArcPy can be used
 to make some operational workflows easyer to manage.
 As an example problem:
 –   suppose we need to provide our operational teams with the most
     updated GIS data each time they go out to the field;
 –   Consider that after their job is done, while still in the field, they will
     update the spatial data related to the job they executed;
 –   In the end we want this new data in our main geodatabase.
Use case #3 – automate workflow

 One possible workflow could be to:
 1.   Make a python script to create a geodatabase on the team
      portable device and a ‘check-out’ replica between the main
      (parent) and the team (child) geodatabase, providing them with
      the data;




                              Replicate
                  Main          data
                                              Team
              geodatabase                 geodatabase
                (Parent)                     (Child)
Use case #3 – automate workflow
 2.   Create another python script to ‘Synchronize changes’ between
      the geodatabases, updating the data, after the job is completed;




                             Synchronize
                  Main          data
                                               Team
              geodatabase                  geodatabase
                (Parent)                      (Child)
Use case #3 – automate workflow
  3.   To make the process simple to our users, we can also create a
       custom toolbox with tools to run the scripts that check out and
       then check in the data.
Additional resources

 Python concepts and language
 – Google python class
         http://code.google.com/edu/languages/google-python-class/
 – Dive into python
         www.diveintopython.net/

 Arcpy
 – Visit ArcGis help library, and under Professional Library ->
   Geoprocessing > The Arcpy site package
         http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#
         /Welcome_to_the_ArcGIS_Help_Library/00r90000001n00000
         0/
Questions?


             Rui Rua
             rui.rua@geodata.no
             +47 41 64 82 09

Contenu connexe

Tendances

오픈소스 GIS의 이해와 활용(육군사관학교 특강)
오픈소스 GIS의 이해와 활용(육군사관학교 특강)오픈소스 GIS의 이해와 활용(육군사관학교 특강)
오픈소스 GIS의 이해와 활용(육군사관학교 특강)SANGHEE SHIN
 
The Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitThe Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitWeaveworks
 
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & Bitbucket
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & BitbucketVCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & Bitbucket
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & BitbucketMitchell Pronschinske
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GISSANGHEE SHIN
 
Python in geospatial analysis
Python in geospatial analysisPython in geospatial analysis
Python in geospatial analysisSakthivel R
 
Orchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWSOrchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWSDerrick Qin
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsMariano Cunietti
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoSolutions
 
Introduction to GIS
Introduction to GISIntroduction to GIS
Introduction to GISEhsan Hamzei
 
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...Compose Camp - Jetpack Compose for Android Developers Introduction Session De...
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...JassGroup TICS
 
Elastic 101 - Get started
Elastic 101 - Get startedElastic 101 - Get started
Elastic 101 - Get startedIsmaeel Enjreny
 

Tendances (20)

Web GIS
Web GISWeb GIS
Web GIS
 
오픈소스 GIS의 이해와 활용(육군사관학교 특강)
오픈소스 GIS의 이해와 활용(육군사관학교 특강)오픈소스 GIS의 이해와 활용(육군사관학교 특강)
오픈소스 GIS의 이해와 활용(육군사관학교 특강)
 
The Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps ToolkitThe Power of GitOps with Flux & GitOps Toolkit
The Power of GitOps with Flux & GitOps Toolkit
 
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & Bitbucket
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & BitbucketVCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & Bitbucket
VCS + Terraform Cloud: Azure DevOps, GitLab, GitHub & Bitbucket
 
Introduction to Open Source GIS
Introduction to Open Source GISIntroduction to Open Source GIS
Introduction to Open Source GIS
 
Argocd up and running
Argocd up and runningArgocd up and running
Argocd up and running
 
Web mapping
Web mappingWeb mapping
Web mapping
 
Go at uber
Go at uberGo at uber
Go at uber
 
Python in geospatial analysis
Python in geospatial analysisPython in geospatial analysis
Python in geospatial analysis
 
Orchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWSOrchestrating workflows Apache Airflow on GCP & AWS
Orchestrating workflows Apache Airflow on GCP & AWS
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operations
 
GeoServer, an introduction for beginners
GeoServer, an introduction for beginnersGeoServer, an introduction for beginners
GeoServer, an introduction for beginners
 
Introduction to GIS
Introduction to GISIntroduction to GIS
Introduction to GIS
 
Geonode 2.0
Geonode 2.0Geonode 2.0
Geonode 2.0
 
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...Compose Camp - Jetpack Compose for Android Developers Introduction Session De...
Compose Camp - Jetpack Compose for Android Developers Introduction Session De...
 
Elastic 101 - Get started
Elastic 101 - Get startedElastic 101 - Get started
Elastic 101 - Get started
 
Meetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOpsMeetup 23 - 03 - Application Delivery on K8S with GitOps
Meetup 23 - 03 - Application Delivery on K8S with GitOps
 
GIS PPT
GIS PPTGIS PPT
GIS PPT
 
Gitops Hands On
Gitops Hands OnGitops Hands On
Gitops Hands On
 
Mono Repo
Mono RepoMono Repo
Mono Repo
 

En vedette

BK2015 Arcgis pro
BK2015 Arcgis proBK2015 Arcgis pro
BK2015 Arcgis proGeodata AS
 
Loading Parcels Into Smallworld GIS via FME
Loading Parcels Into Smallworld GIS via FMELoading Parcels Into Smallworld GIS via FME
Loading Parcels Into Smallworld GIS via FMESafe Software
 
Avidgeo String Manipulation : Getting Started with Python and ArcGIS
Avidgeo String Manipulation : Getting Started with Python and ArcGISAvidgeo String Manipulation : Getting Started with Python and ArcGIS
Avidgeo String Manipulation : Getting Started with Python and ArcGISGuido Stein
 
Python Scripting for ArcGIS
Python Scripting for ArcGISPython Scripting for ArcGIS
Python Scripting for ArcGISsiufu
 
Editing for ArcGIS 10 and 10.1
Editing for ArcGIS 10 and 10.1Editing for ArcGIS 10 and 10.1
Editing for ArcGIS 10 and 10.1John Schaeffer
 
Applications of Arc GIS
Applications of Arc GISApplications of Arc GIS
Applications of Arc GISExtraPDFs
 

En vedette (9)

BK2015 Arcgis pro
BK2015 Arcgis proBK2015 Arcgis pro
BK2015 Arcgis pro
 
Loading Parcels Into Smallworld GIS via FME
Loading Parcels Into Smallworld GIS via FMELoading Parcels Into Smallworld GIS via FME
Loading Parcels Into Smallworld GIS via FME
 
ArcGIS Lesson 3
ArcGIS Lesson 3ArcGIS Lesson 3
ArcGIS Lesson 3
 
Avidgeo String Manipulation : Getting Started with Python and ArcGIS
Avidgeo String Manipulation : Getting Started with Python and ArcGISAvidgeo String Manipulation : Getting Started with Python and ArcGIS
Avidgeo String Manipulation : Getting Started with Python and ArcGIS
 
Python and ArcGIS 10.1
Python and ArcGIS 10.1Python and ArcGIS 10.1
Python and ArcGIS 10.1
 
ArcGIS Python Programming (3Nov11)
ArcGIS Python Programming (3Nov11)ArcGIS Python Programming (3Nov11)
ArcGIS Python Programming (3Nov11)
 
Python Scripting for ArcGIS
Python Scripting for ArcGISPython Scripting for ArcGIS
Python Scripting for ArcGIS
 
Editing for ArcGIS 10 and 10.1
Editing for ArcGIS 10 and 10.1Editing for ArcGIS 10 and 10.1
Editing for ArcGIS 10 and 10.1
 
Applications of Arc GIS
Applications of Arc GISApplications of Arc GIS
Applications of Arc GIS
 

Similaire à Automation in ArcGIS using Arcpy

Python and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowPython and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowJohn Reiser
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIYoni Davidson
 
Using pySpark with Google Colab & Spark 3.0 preview
Using pySpark with Google Colab & Spark 3.0 previewUsing pySpark with Google Colab & Spark 3.0 preview
Using pySpark with Google Colab & Spark 3.0 previewMario Cartia
 
Analytics with arcpy package detailing of Mapping Module Properties and Data ...
Analytics with arcpy package detailing of Mapping Module Properties and Data ...Analytics with arcpy package detailing of Mapping Module Properties and Data ...
Analytics with arcpy package detailing of Mapping Module Properties and Data ...Soumik Chakraborty
 
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...Ron Reiter
 
Apache Spark Tutorial
Apache Spark TutorialApache Spark Tutorial
Apache Spark TutorialAhmet Bulut
 
Efficient Log Management using Oozie, Parquet and Hive
Efficient Log Management using Oozie, Parquet and HiveEfficient Log Management using Oozie, Parquet and Hive
Efficient Log Management using Oozie, Parquet and HiveGopi Krishnan Nambiar
 
Apache Spark for Everyone - Women Who Code Workshop
Apache Spark for Everyone - Women Who Code WorkshopApache Spark for Everyone - Women Who Code Workshop
Apache Spark for Everyone - Women Who Code WorkshopAmanda Casari
 
Session 37 - Intro to Workflows, API's and semantics
Session 37 - Intro to Workflows, API's and semantics Session 37 - Intro to Workflows, API's and semantics
Session 37 - Intro to Workflows, API's and semantics ISSGC Summer School
 
Esri South Africa Python for Everyone
Esri South Africa Python for EveryoneEsri South Africa Python for Everyone
Esri South Africa Python for EveryoneEsri South Africa
 
Scalable data pipeline at Traveloka - Facebook Dev Bandung
Scalable data pipeline at Traveloka - Facebook Dev BandungScalable data pipeline at Traveloka - Facebook Dev Bandung
Scalable data pipeline at Traveloka - Facebook Dev BandungRendy Bambang Junior
 
A slide share pig in CCS334 for big data analytics
A slide share pig in CCS334 for big data analyticsA slide share pig in CCS334 for big data analytics
A slide share pig in CCS334 for big data analyticsKrishnaVeni451953
 
HiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSHiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSTulipp. Eu
 
AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09Chris Purrington
 
Xadoop - new approaches to data analytics
Xadoop - new approaches to data analyticsXadoop - new approaches to data analytics
Xadoop - new approaches to data analyticsMaxim Grinev
 
spark example spark example spark examplespark examplespark examplespark example
spark example spark example spark examplespark examplespark examplespark examplespark example spark example spark examplespark examplespark examplespark example
spark example spark example spark examplespark examplespark examplespark exampleShidrokhGoudarzi1
 
Python 4 Arc
Python 4 ArcPython 4 Arc
Python 4 Arcabsvis
 
APPLICATION OF PYTHON IN GEOSCIENCE
APPLICATION OF  PYTHON IN GEOSCIENCEAPPLICATION OF  PYTHON IN GEOSCIENCE
APPLICATION OF PYTHON IN GEOSCIENCEAhasanHabibSajeeb
 
Hadoop in Practice (SDN Conference, Dec 2014)
Hadoop in Practice (SDN Conference, Dec 2014)Hadoop in Practice (SDN Conference, Dec 2014)
Hadoop in Practice (SDN Conference, Dec 2014)Marcel Krcah
 

Similaire à Automation in ArcGIS using Arcpy (20)

Python and GIS: Improving Your Workflow
Python and GIS: Improving Your WorkflowPython and GIS: Improving Your Workflow
Python and GIS: Improving Your Workflow
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-API
 
Using pySpark with Google Colab & Spark 3.0 preview
Using pySpark with Google Colab & Spark 3.0 previewUsing pySpark with Google Colab & Spark 3.0 preview
Using pySpark with Google Colab & Spark 3.0 preview
 
Analytics with arcpy package detailing of Mapping Module Properties and Data ...
Analytics with arcpy package detailing of Mapping Module Properties and Data ...Analytics with arcpy package detailing of Mapping Module Properties and Data ...
Analytics with arcpy package detailing of Mapping Module Properties and Data ...
 
Apache PIG
Apache PIGApache PIG
Apache PIG
 
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...
BDX 2015 - Scaling out big-data computation & machine learning using Pig, Pyt...
 
Apache Spark Tutorial
Apache Spark TutorialApache Spark Tutorial
Apache Spark Tutorial
 
Efficient Log Management using Oozie, Parquet and Hive
Efficient Log Management using Oozie, Parquet and HiveEfficient Log Management using Oozie, Parquet and Hive
Efficient Log Management using Oozie, Parquet and Hive
 
Apache Spark for Everyone - Women Who Code Workshop
Apache Spark for Everyone - Women Who Code WorkshopApache Spark for Everyone - Women Who Code Workshop
Apache Spark for Everyone - Women Who Code Workshop
 
Session 37 - Intro to Workflows, API's and semantics
Session 37 - Intro to Workflows, API's and semantics Session 37 - Intro to Workflows, API's and semantics
Session 37 - Intro to Workflows, API's and semantics
 
Esri South Africa Python for Everyone
Esri South Africa Python for EveryoneEsri South Africa Python for Everyone
Esri South Africa Python for Everyone
 
Scalable data pipeline at Traveloka - Facebook Dev Bandung
Scalable data pipeline at Traveloka - Facebook Dev BandungScalable data pipeline at Traveloka - Facebook Dev Bandung
Scalable data pipeline at Traveloka - Facebook Dev Bandung
 
A slide share pig in CCS334 for big data analytics
A slide share pig in CCS334 for big data analyticsA slide share pig in CCS334 for big data analytics
A slide share pig in CCS334 for big data analytics
 
HiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOSHiPEAC 2019 Tutorial - Maestro RTOS
HiPEAC 2019 Tutorial - Maestro RTOS
 
AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09AWS (Hadoop) Meetup 30.04.09
AWS (Hadoop) Meetup 30.04.09
 
Xadoop - new approaches to data analytics
Xadoop - new approaches to data analyticsXadoop - new approaches to data analytics
Xadoop - new approaches to data analytics
 
spark example spark example spark examplespark examplespark examplespark example
spark example spark example spark examplespark examplespark examplespark examplespark example spark example spark examplespark examplespark examplespark example
spark example spark example spark examplespark examplespark examplespark example
 
Python 4 Arc
Python 4 ArcPython 4 Arc
Python 4 Arc
 
APPLICATION OF PYTHON IN GEOSCIENCE
APPLICATION OF  PYTHON IN GEOSCIENCEAPPLICATION OF  PYTHON IN GEOSCIENCE
APPLICATION OF PYTHON IN GEOSCIENCE
 
Hadoop in Practice (SDN Conference, Dec 2014)
Hadoop in Practice (SDN Conference, Dec 2014)Hadoop in Practice (SDN Conference, Dec 2014)
Hadoop in Practice (SDN Conference, Dec 2014)
 

Plus de Geodata AS

Øvelse Oslofjord - BK2016
Øvelse Oslofjord  - BK2016Øvelse Oslofjord  - BK2016
Øvelse Oslofjord - BK2016Geodata AS
 
Kartlegging av flomveier i Oslo - BK2015
Kartlegging av flomveier i Oslo - BK2015Kartlegging av flomveier i Oslo - BK2015
Kartlegging av flomveier i Oslo - BK2015Geodata AS
 
Imagery and beyond - BK 2016
Imagery and beyond - BK 2016Imagery and beyond - BK 2016
Imagery and beyond - BK 2016Geodata AS
 
ArcGIS i samferdselsplanlegging - BK2016
ArcGIS i samferdselsplanlegging - BK2016ArcGIS i samferdselsplanlegging - BK2016
ArcGIS i samferdselsplanlegging - BK2016Geodata AS
 
Disrupt or be disrupted - BK 2016
Disrupt or be disrupted - BK 2016Disrupt or be disrupted - BK 2016
Disrupt or be disrupted - BK 2016Geodata AS
 
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016ArcGIS Server og FME som duo i dokumentproduksjon - BK2016
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016Geodata AS
 
Workflow manager - Kystverkets bruk og erfaringer - BK2016
Workflow manager - Kystverkets bruk og erfaringer - BK2016Workflow manager - Kystverkets bruk og erfaringer - BK2016
Workflow manager - Kystverkets bruk og erfaringer - BK2016Geodata AS
 
Workflow manager – hva er det og hva kan det brukes til - BK2016
Workflow manager – hva er det og hva kan det brukes til - BK2016Workflow manager – hva er det og hva kan det brukes til - BK2016
Workflow manager – hva er det og hva kan det brukes til - BK2016Geodata AS
 
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016Geodata AS
 
Enkel tilgang på live trafikkinformasjon - BK2016
Enkel tilgang på live trafikkinformasjon - BK2016Enkel tilgang på live trafikkinformasjon - BK2016
Enkel tilgang på live trafikkinformasjon - BK2016Geodata AS
 
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016Geodata AS
 
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...Geodata AS
 
Arctic Risk Map - kommuniserer regionens sikkerhet og miljø risiko - BK2016
Arctic Risk Map -  kommuniserer regionens sikkerhet og miljø risiko - BK2016Arctic Risk Map -  kommuniserer regionens sikkerhet og miljø risiko - BK2016
Arctic Risk Map - kommuniserer regionens sikkerhet og miljø risiko - BK2016Geodata AS
 
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...Geodata AS
 
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016Geodata AS
 
Kom i gang med ArcGIS Pro
Kom i gang med ArcGIS ProKom i gang med ArcGIS Pro
Kom i gang med ArcGIS ProGeodata AS
 
ArcGIS en plattform for hele virksomheten - BK2016
ArcGIS  en plattform for hele virksomheten - BK2016ArcGIS  en plattform for hele virksomheten - BK2016
ArcGIS en plattform for hele virksomheten - BK2016Geodata AS
 
Geografiske analyser i ArcGIS - BK 2016
Geografiske analyser i ArcGIS - BK 2016Geografiske analyser i ArcGIS - BK 2016
Geografiske analyser i ArcGIS - BK 2016Geodata AS
 
Skredregistrering.no og norsk skreddatabase - BK2016
Skredregistrering.no og norsk skreddatabase - BK2016Skredregistrering.no og norsk skreddatabase - BK2016
Skredregistrering.no og norsk skreddatabase - BK2016Geodata AS
 
Laserskanning av skog fra drone gir nye muligheter - BK2016
Laserskanning av skog fra drone gir nye muligheter - BK2016Laserskanning av skog fra drone gir nye muligheter - BK2016
Laserskanning av skog fra drone gir nye muligheter - BK2016Geodata AS
 

Plus de Geodata AS (20)

Øvelse Oslofjord - BK2016
Øvelse Oslofjord  - BK2016Øvelse Oslofjord  - BK2016
Øvelse Oslofjord - BK2016
 
Kartlegging av flomveier i Oslo - BK2015
Kartlegging av flomveier i Oslo - BK2015Kartlegging av flomveier i Oslo - BK2015
Kartlegging av flomveier i Oslo - BK2015
 
Imagery and beyond - BK 2016
Imagery and beyond - BK 2016Imagery and beyond - BK 2016
Imagery and beyond - BK 2016
 
ArcGIS i samferdselsplanlegging - BK2016
ArcGIS i samferdselsplanlegging - BK2016ArcGIS i samferdselsplanlegging - BK2016
ArcGIS i samferdselsplanlegging - BK2016
 
Disrupt or be disrupted - BK 2016
Disrupt or be disrupted - BK 2016Disrupt or be disrupted - BK 2016
Disrupt or be disrupted - BK 2016
 
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016ArcGIS Server og FME som duo i dokumentproduksjon - BK2016
ArcGIS Server og FME som duo i dokumentproduksjon - BK2016
 
Workflow manager - Kystverkets bruk og erfaringer - BK2016
Workflow manager - Kystverkets bruk og erfaringer - BK2016Workflow manager - Kystverkets bruk og erfaringer - BK2016
Workflow manager - Kystverkets bruk og erfaringer - BK2016
 
Workflow manager – hva er det og hva kan det brukes til - BK2016
Workflow manager – hva er det og hva kan det brukes til - BK2016Workflow manager – hva er det og hva kan det brukes til - BK2016
Workflow manager – hva er det og hva kan det brukes til - BK2016
 
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016
ArcGIS Portal og sharepoint - en fleksibel kombinasjon - BK2016
 
Enkel tilgang på live trafikkinformasjon - BK2016
Enkel tilgang på live trafikkinformasjon - BK2016Enkel tilgang på live trafikkinformasjon - BK2016
Enkel tilgang på live trafikkinformasjon - BK2016
 
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016
Anvendelse av ArcGIS-plattformen for planlegging gjennomføring - BK2016
 
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...
Dynamisk ressurs modellering - miljørisikoanalyse for arktiske olje og gass a...
 
Arctic Risk Map - kommuniserer regionens sikkerhet og miljø risiko - BK2016
Arctic Risk Map -  kommuniserer regionens sikkerhet og miljø risiko - BK2016Arctic Risk Map -  kommuniserer regionens sikkerhet og miljø risiko - BK2016
Arctic Risk Map - kommuniserer regionens sikkerhet og miljø risiko - BK2016
 
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...
Tilstandsregistrering av landbruksveger i Hedmark ved hjelp av collector for ...
 
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016
Bruks av ArcGIS Online som samhandlingsplattform i beredskap og krise - BK2016
 
Kom i gang med ArcGIS Pro
Kom i gang med ArcGIS ProKom i gang med ArcGIS Pro
Kom i gang med ArcGIS Pro
 
ArcGIS en plattform for hele virksomheten - BK2016
ArcGIS  en plattform for hele virksomheten - BK2016ArcGIS  en plattform for hele virksomheten - BK2016
ArcGIS en plattform for hele virksomheten - BK2016
 
Geografiske analyser i ArcGIS - BK 2016
Geografiske analyser i ArcGIS - BK 2016Geografiske analyser i ArcGIS - BK 2016
Geografiske analyser i ArcGIS - BK 2016
 
Skredregistrering.no og norsk skreddatabase - BK2016
Skredregistrering.no og norsk skreddatabase - BK2016Skredregistrering.no og norsk skreddatabase - BK2016
Skredregistrering.no og norsk skreddatabase - BK2016
 
Laserskanning av skog fra drone gir nye muligheter - BK2016
Laserskanning av skog fra drone gir nye muligheter - BK2016Laserskanning av skog fra drone gir nye muligheter - BK2016
Laserskanning av skog fra drone gir nye muligheter - BK2016
 

Dernier

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 

Dernier (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

Automation in ArcGIS using Arcpy

  • 2. Presentation topics In this presentation I will talk about: – How automation can be used to execute some geodatabase tasks; – Python, ArcPy and its interaction with the geodatabase; – Use cases.
  • 3. What can we use automation for with geodatabases? In a general way, we use automation with geodatabases to: – Explore geodatabase content; – Simplify the execution of frequent administration tasks: • Create indexes; • Set privileges. – Implement data workflows: • conversion; • distribution;
  • 4. How can automation be done? Automation of these tasks can be done using the Python programming language. Why Python? – Simple and easy to learn; – Widely adopted and well documented; – Powerfull, with many available built-in and external modules; – Fast to implement.
  • 5. How can python be used with Arcgis and the geodatabase? The use of Python with Arcgis and the geodatabase is simplified by the fact that: – Python is available by default with all ArcGis 9.X and 10.X Desktop installations; – ‘Coding’ can be done using ArcGis Desktop ‘Python Window’ or one of the many development environments available: • Wingware • pyDev • or even Notepad++
  • 6. How can python be used with Arcgis and the geodatabase? – All the interaction with the geodatabase, feature classes, rasters or even the mxds is done through a single python package, named ArcPy – and not with a vast library, making it easy to access the right function or geoprocessing tool. – If needed, in addition, specific modules provide a direct interaction with the databases themselves: • cx_oracle for Oracle; • pymssql for SQL Server.
  • 7. What is ArcPy? This means that most of the time while scripting we will be using ArcPy, which is: – ESRIs python package for ArcGis 10 products - a set of modules, classes and functions; – ‘Upgraded’ from Arcgis version 9.X ‘arcgisscripting’. ArcPy is divided in a small number of modules, with names familiar to all ArcGis users: – Mapping (to interact with mxds); – Geostatistical analyst; – Spatial analyst.
  • 8. What is arcpy main purpose then? ArcPy main purpose then is to: – provide easy programming access to all common data structures, geoprocessing tools and map documents (.mxd); – Simplify the execution of repetitive manual tasks by using scripts that are relatively fast to implement and that can be runned over and over.
  • 9. Whats needed to use automation with the geodatabase? This means that to use automation with the geodatabase we need: – Good understanding of geodatabases; – Learn general python concepts and the language itself; – Become familiar with the ArcPy package. An easy way to start is to use both: – Geoprocessing tools help; – ArcPy page.
  • 10. Use cases : To demonstrate how ArcPy interacts with the geodatabase, we’ll look into some examples where we use: – functions to explore the geodatabase; – geoprocessing tools to automate administrative tasks; – Both functions and geoprocessing tools to implement a ‘data distribution’ workflow.
  • 11. Use case #1 - explore the geodatabase : In the first case we will see that ArcPy can be used to explore geodatabase objects and the data itself. It has its own functions to List: – Datasets; – Feature class or tables; – Fields; – or Rasters.
  • 12. Use case #1 - explore the geodatabase : It also has some specific functions to: – ‘Describe’ the data, as the ones used to: • Get a feature class spatial reference; • or to Check if its versioned; – Read and Write data, allowing us to: • Get attribute values; • Update or insert features.
  • 13. Use case #2 – administrative tasks: In this second example we will see how Arcpy can be used to run administrative tasks on datasets or feature classes. This can be done by using standard geoprocessing tools, as we know them in ArcToolbox: – Create or remove indexes; – Set privileges;
  • 14. Use case #3 – automate workflow In this third example we will see how ArcPy can be used to make some operational workflows easyer to manage. As an example problem: – suppose we need to provide our operational teams with the most updated GIS data each time they go out to the field; – Consider that after their job is done, while still in the field, they will update the spatial data related to the job they executed; – In the end we want this new data in our main geodatabase.
  • 15. Use case #3 – automate workflow One possible workflow could be to: 1. Make a python script to create a geodatabase on the team portable device and a ‘check-out’ replica between the main (parent) and the team (child) geodatabase, providing them with the data; Replicate Main data Team geodatabase geodatabase (Parent) (Child)
  • 16. Use case #3 – automate workflow 2. Create another python script to ‘Synchronize changes’ between the geodatabases, updating the data, after the job is completed; Synchronize Main data Team geodatabase geodatabase (Parent) (Child)
  • 17. Use case #3 – automate workflow 3. To make the process simple to our users, we can also create a custom toolbox with tools to run the scripts that check out and then check in the data.
  • 18. Additional resources Python concepts and language – Google python class http://code.google.com/edu/languages/google-python-class/ – Dive into python www.diveintopython.net/ Arcpy – Visit ArcGis help library, and under Professional Library -> Geoprocessing > The Arcpy site package http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html# /Welcome_to_the_ArcGIS_Help_Library/00r90000001n00000 0/
  • 19. Questions? Rui Rua rui.rua@geodata.no +47 41 64 82 09