Předchozí příspěvek<\/A> sdílel pět užitečných Python kódů pro automatizaci mapovacích úkolů v ArcMap. Tento příspěvek vás provede tím, jak dosáhnout stejných úkolů pomocí ArcGIS Pro Python okna<\/A>.<\/P>V ArcGIS Pro se mapovací modul nazývá arcpy.mp<\/A>. Chcete-li si níže uvedené ukázky vyzkoušet sami, vytvořte kopii souboru projektu ArcGIS Pro (APRX) a přesuňte ji někam pro testování. Nemusíte být zkušený Python skriptér — jednoduše zadejte níže uvedený kód do Python okna a podívejte se na výsledky. <\/P>Brzy uvidíte, jak pár Python triků může urychlit správu map.<\/P>Každá níže uvedená ukázka funguje s ArcGIS Pro 1.x, existujícím souborem projektu, modulem arcpy.mp a Python 3.x.<\/LI><\/UL>Ukázka 1: Kontrola dotazů definice vrstvy<\/STRONG><\/SPAN><\/P><\/P>Předpokládejme, že potřebujete zkontrolovat, zda některá z vrstev ve vašem projektu ArcGIS Pro má aplikovaný dotaz definice, a pokud ano, zobrazit tyto dotazy definice. Otevírání dialogového okna Vlastnosti vrstvy pro každou vrstvu v každé mapě je otravné.<\/SPAN><\/P><\/P>Řešení: Místo toho otevřete Python okno a spusťte níže uvedený kód. Název a dotaz definice všech vrstev bude „vytištěn“ (tj. zobrazen v Python okně).<\/SPAN><\/P><\/P>Rozbor kódu<\/STRONG><\/SPAN><\/P>První řádek kódu vytváří proměnnou nazvanou aprx<\/STRONG><\/SPAN> , která odkazuje na otevřený projekt pomocí funkce ArcGISProject<\/A> s klíčovým slovem CURRENT.<\/SPAN><\/LI>Další řádek kódu vytváří proměnnou nazvanou maps <\/STRONG><\/SPAN>pomocí metody listMaps, která vrací Python seznam objektů Map v projektu.<\/SPAN><\/LI>Používá se smyčka for <\/STRONG><\/SPAN> pro iteraci přes každou mapu.<\/SPAN><\/LI>Pro každou mapu se používá metoda listLayers k vytvoření seznamu vrstev.<\/SPAN><\/LI>Další smyčka for <\/STRONG><\/SPAN> iteruje přes seznam vrstev.<\/SPAN><\/LI>Třída Layer<\/A> má mnoho vlastností, ke kterým lze přistupovat, včetně názvu a dotazu definice vrstvy. Protože ne všechny typy vrstev podporují všechny vlastnosti, používá se metoda supports k otestování, které vlastnosti vrstva podporuje.<\/SPAN><\/LI>Poslední řádek kódu tiskne (zobrazuje) název každé mapy, název každé vrstvy a dotaz definice každé vrstvy.<\/SPAN><\/LI><\/UL>Ukázka 2: Oprava přerušených odkazů<\/STRONG><\/SPAN><\/P>V určitém okamžiku jste pravděpodobně přesunuli mapová data z jednoho pracovního prostoru do druhého. Už jste někdy viděli ty děsivé červené vykřičníky? <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/>
V ArcGIS Pro se mapovací modul nazývá
Brzy uvidíte, jak pár Python triků může urychlit správu map.<\/P>
Ukázka 1: Kontrola dotazů definice vrstvy<\/STRONG><\/SPAN><\/P><\/P>Předpokládejme, že potřebujete zkontrolovat, zda některá z vrstev ve vašem projektu ArcGIS Pro má aplikovaný dotaz definice, a pokud ano, zobrazit tyto dotazy definice. Otevírání dialogového okna Vlastnosti vrstvy pro každou vrstvu v každé mapě je otravné.<\/SPAN><\/P><\/P>Řešení: Místo toho otevřete Python okno a spusťte níže uvedený kód. Název a dotaz definice všech vrstev bude „vytištěn“ (tj. zobrazen v Python okně).<\/SPAN><\/P><\/P>Rozbor kódu<\/STRONG><\/SPAN><\/P>První řádek kódu vytváří proměnnou nazvanou aprx<\/STRONG><\/SPAN> , která odkazuje na otevřený projekt pomocí
<\/P>
Rozbor kódu<\/STRONG><\/SPAN><\/P>První řádek kódu vytvoří proměnnou nazvanou pdf<\/STRONG><\/SPAN> , která odkazuje na existující PDF dokument.<\/SPAN><\/LI>Metoda appendPages se používá k přidání stránek z PDF na konec odkazovaného PDF.<\/SPAN><\/LI>Pro uložení změn se používá metoda saveAndClose.<\/SPAN><\/LI><\/UL>Chcete se dozvědět více?<\/STRONG><\/SPAN><\/P>Pokud byste se chtěli dozvědět více o práci s oknem Python v ArcGIS Pro nebo o migraci Python skriptů z ArcMap do ArcGIS Pro, podívejte se na tyto zdroje:<\/SPAN><\/P>Tutoriál: Začínáme s arcpy.mp<\/A><\/SPAN><\/LI>Nápověda ArcGIS: Migrace z arcpy.mapping do ArcGIS Pro <\/A><\/SPAN><\/LI><\/UL>Pokud chcete úvod do ArcGIS Pro, doporučujeme tyto kurzy:<\/SPAN><\/DIV> <\/DIV>Začínáme s ArcGIS Pro<\/A><\/SPAN><\/LI>ArcGIS Pro: Základní pracovní postupy<\/A><\/SPAN><\/LI>Migrace z ArcMap do ArcGIS Pro<\/A><\/LI><\/UL><\/DIV> Tento příspěvek přispěla instruktorka Esri Brittney White. Brittney sídlí ve Washingtonu, D.C., a její vášní je pomáhat zákazníkům učit se o technologii Esri a aplikovat ji ve své vlastní práci.<\/SPAN><\/P><\/BODY><\/HTML>
Tento příspěvek přispěla instruktorka Esri Brittney White. Brittney sídlí ve Washingtonu, D.C., a její vášní je pomáhat zákazníkům učit se o technologii Esri a aplikovat ji ve své vlastní práci.<\/SPAN><\/P><\/BODY><\/HTML>
I also would like to complement with this:
How to return the data source of a layer
import arcpy aprx = arcpy.mp.ArcGISProject('CURRENT') lyr = maps.listLayers()[0] print("The layer's data source of: " + lyr.name + " is " + lyr.dataSource)
Nicely done. I am looking for an iterator to turn on each data layer in an ArcPro document (that is based off of a complex view in SQL Server, export to PNG, and then go to the next layer and do the same thing.
Přihlášení členové mohou přispívat, sledovat aktualizace a další. Nový zde? Zaregistrujte si bezplatný účet.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.