Daha çox

Python Eklentisini istifadə edərək təbəqədən simbologiya tətbiq edərkən dəyər sahəsi dəyişdirilir?

Python Eklentisini istifadə edərək təbəqədən simbologiya tətbiq edərkən dəyər sahəsi dəyişdirilir?


ArcMap-da bir çoxbucaqlı xüsusiyyət sinifindən bir qat faylı yaradan bir python addin düyməsinə sahibəm. Bu təbəqə faylını götürmək və bir qovurma qutusundan istifadəçi girişi ilə fərqli bir dəyər sahəsini istifadə edərək yenidən xüsusiyyət sinifinə tətbiq etmək istəyirəm. Məsələn, aşağıdakı xüsusiyyətlərə sahib "adlar" adlı bir xüsusiyyət sinifim var:

Ad üçün unikal dəyərlərə əsaslanan bir təbəqə faylı yaratmaq istəyirəm və sonra Name_Change1 və Name_Change2-i göstərmək üçün həmin təbəqə faylından istifadə edirəm ki, rənglərim hər bir unikal dəyər üçün ardıcıl qalsın (məsələn: Finnley həmişə bənövşəyi, Dylan isə həmişə yaşıldır). Bu, ArcMap-da simbologiyanı qat faylından idxal etmək və dəyər sahəsini dəyişdirməklə mümkündür. Ancaq bir python alət çubuğunda bu funksiyaya ehtiyacım var.

Hal-hazırda hər sahə üçün ayrı təbəqələr yaradıram və bunlardan istifadə edirəm. Bu işləyir, ancaq əlavə istifadə etmək üçün çoxlu quraşdırma tələb olunur:

əgər combobox_value == "Name_Change1": əgər arcpy.Exists ("Name_Change1.lyr"): arcpy.ApplySymbologyFromLayer_management (adlar, "Name_Change1.lyr")

Ancaq bunun belə bir şey olmasını istəyirəm:

əgər combobox_value == "Name_Change1" əgər arcpy.Exists ("Name.lyr"): # Name.lyr arcpy.ApplySymbologyFromLayer_management dəyər sahəsini təyin edin / dəyişdirin (adlar, "Name.lyr")

Simbologiyanın həmişə "Name.lyr" -dən çəkildiyi yer.

ApplySymbologyFromLayer alətinin dəyər sahəsi üçün bir parametrə sahib olmasını çox arzulayıram, amma belə görünmür. Buna imkan verəcək başqa bir vasitə / metod tapmadım. Kiminsə fikri varmı?


UniqueValuesSymbology sinifində valueField xassəsini axtarırsınız kimi səslənir: http://resources.arcgis.com/en/help/main/10.1/index.html#/UniqueValuesSymbology/00s30000005s000000/


Qat xüsusiyyətlərinin qurulması

Layer Properties informasiya qutusu, müxtəlif coğrafi məlumat növləri üçün fərqli olacaqdır. Məsələn, bir xüsusiyyət sinfi məlumat mənbəyinin simbologiyasını təyin etmək, raster məlumat dəstindən fərqli olacaqdır. Layer Properties informasiya qutusundan istifadə edərək layın simbologiyası kimi xüsusiyyətlərini təyin edə bilərsiniz. Bir qrup təbəqəsi ilə bütün qrupa aid olan xüsusiyyətləri idarə edə bilərsiniz. Hər təbəqənin xüsusiyyətlərini ayrı-ayrılıqda düzəltmək üçün qrup təbəqəsindəki hər bir ayrı təbəqə üçün qat xüsusiyyətlərini açın.

  • Ümumi—Bir təbəqə təsvirini qeyd etmək, kreditlər təyin etmək və miqyaya bağlı rəsm xüsusiyyətlərini təyin etmək üçün istifadə olunur.
  • Mənbə—Məlumatlarınızın həcminə baxmağa imkan verir. Məlumatların mənbəyini bu nişandan görə və dəyişə bilərsiniz.
  • Seçim—Müəyyən bir təbəqədəki xüsusiyyətlərin seçildiyi zaman necə vurğulandığını təyin etməyə imkan verir. Müəyyən bir təbəqədəki seçim mülkiyyəti dəyişiklikləri, standart Seçim Seçimləri parametrlərini ləğv edir.
  • Ekran—Görünüşdə hərəkət edərkən məlumatlarınızın necə göstərildiyinə nəzarət edir. Seçimlər arasında bir təbəqənin şəffaf olması, MapTips və hiperlinklərin əlavə edilməsi və xaric edilmiş xüsusiyyətlərin bərpası daxildir.
  • Simbologiya—Xəritə işarələrini təyin etmək və məlumatlarınızı göstərmək üçün seçimlər təqdim edir. Seçimlərə atribut dəyərlərinə əsaslanan kəmiyyətlərin, rəng rampalarının və ya qrafiklərin atributlara əsaslanan və ya təqdimat qaydaları və işarələrinin istifadəsinə əsaslanan kateqoriyalardan istifadə edərək nisbətli işarələrdən istifadə edərək bütün xüsusiyyətləri bir simvolla çəkmək daxildir.
  • Sahələr—Atribut sahələri ilə bağlı xüsusiyyətləri təyin etmək üçün istifadə olunur. Ayrıca takma adlar yarada, nömrələri formatlaya və sahələri görünməz hala gətirə bilərsiniz. Əhəmiyyətli bir cəhət, istifadəçilərinizin xüsusiyyət atributları ilə işləməsini asanlaşdıran görünən sahələr üçün Takma adlar təyin etməkdir.
  • Tərif sorğusu—Xüsusiyyətlərinizin bir alt hissəsinin təbəqədə istifadə ediləcəyini təyin etməyə imkan verir. Query Builder informasiya qutusu ilə qatınızda istifadə ediləcək bir verilənlər bazasının xüsusi xüsusiyyətlərini seçmək üçün bir ifadə yarada bilərsiniz.
  • Etiketlər—Bir təbəqənin etiketlərini açmağa, etiket ifadələri yaratmağa, etiket siniflərini idarə etməyə və etiket yerləşdirmə və simbologiya üçün etiketləmə seçimlərini qurmağa imkan verir. Alternativ olaraq, Etiket menecerindən istifadə edərək xəritədəki bütün təbəqələr üçün etiketləmə xüsusiyyətlərini təyin edə bilərsiniz.
  • Qoşulur və əlaqələndirir—Atribut cədvəllərini qatın xüsusiyyət atributları cədvəlinə qoşmağa və ya əlaqələndirməyə imkan verir.
  • Vaxt—Zamandan xəbərdar olan təbəqələrin zaman xüsusiyyətlərini təyin etmək üçün istifadə olunur.
  • HTML Popup -Bu barədə məlumatı göstərmək üçün bir xüsusiyyəti tıkladığınızda açılan siyahıların necə yaradıldığını təyin etmək üçün istifadə olunur.
Diqqət:
  • Layer seçmə xüsusiyyətləri deaktivdir.
  • Katmanın xüsusiyyətləri xəritədə heç bir şəkildə seçilə bilməz. Cədvəl pəncərəsindən daxil olan Atributları Seç dialoq qutusundakı bir ifadənin seçilməsi də daxil olmaqla atribut cədvəli pəncərəsindəki qeydləri seçə bilərsiniz, lakin bu seçim dəsti xəritədə əks olunmur. Tərif sorğuları qat xüsusiyyətlərində müəyyən edilə bilməz.
  • Cədvəldən xəritəyə keçmək kimi seçilmiş xüsusiyyətlərdən istifadə edən əməliyyatlar həyata keçirilə bilməz.
  • Əlaqələr müəyyən edilə bilməz. Münasibətlər yalnız bir obyekt-ID sütunu olan cədvəllər üçün yaradıla bilər. Bir obyekt-kimliyi olan bir cədvəldən bir obyekt-kimlik sahəsi olmayan bir cədvəllə əlaqələndirə bilərsiniz. Bu halda, əlaqəli qeydləri sadalamaq üçün müəyyənləşdirmə vasitəsi ilə istifadə edilə bilər. Seçimləri əlaqələndirmə vasitəsi ilə itələyə bilməzsiniz.

Tədbir məlumatları ilə həll yolu, hadisə təbəqəsi əvəzinə cədvəlli məlumat mənbəyindən bir xüsusiyyət sinfi yaratmaqdır. XY məlumatlarını ehtiva edən bir obyekt-kimlik sahəsi olmayan bir cədvəl əlavə edirsinizsə, cədvələ əsaslanan hadisə qatını yaratmaq üçün ArcMap-da File & gt Data & gt Add XY Data əmrini istifadə etməyin. Bunun əvəzinə ArcCatalog-a gedin, cədvələ sağ vurun və yeni bir xüsusiyyət sinfi yaratmaq üçün XY-dən Xüsusiyyət Sınıfı yarat seçin. Sonra yeni xüsusiyyət sinifini xəritənizə əlavə edin. Alternativ olaraq, File & gt Data əlavə et & gt XY Data əlavə et və ya File & gt Data & gt Add Route Events funksiyalarını istifadə etdikdən sonra Object-ID olmadan masadan hadisə təbəqəsi yaratmaq üçün yeni bir qat yaratmaq üçün məlumatları ixrac edə bilərsiniz. Bu, məlumatları bir xüsusiyyət sinfinə saxlayacaq və buna görə bir Nesne Kimliği sahəsini yazacaq. Başqa bir seçim, OLEDB bağlantısı istifadə edərək cədvəl düzəltməyə və Obyekt ID-si üçün istifadə etmək üçün bir sütun təyin etməyə və ya Obyekt-ID-yə dinamik bir şəkildə əlavə etməyə imkan verən Make_Query_Table geo-işləmə alətindən istifadə etməkdir.

  1. Məzmun cədvəlindəki qatı sağ vurun və Xüsusiyyətlər vurun və ya Layer Xüsusiyyətləri informasiya qutusunu açmaq üçün təbəqə adını cüt vurun.
  2. Dəyişdirmək istədiyiniz xüsusiyyətləri ehtiva edən nişanı vurun.
  3. Bitirdikdən sonra Tamam düyməsini basın.

Metodlar

Parametri verilən mesajla səhv (qırmızı X) olduğu kimi qeyd edir. Parametrlərdən hər hansı birində səhv varsa alətlər icra edilmir.

Parametri verilən mesajla birlikdə bir xəbərdarlıq (sarı üçbucaq) kimi işarələyir. Səhvlərdən fərqli olaraq alətlər xəbərdarlıq mesajları ilə icra olunur.

setIDMessage (messageType: string, messageID: string, , )

Bir sistem mesajı təyin etməyə imkan verir. Arqumentlər AddIDMessage funksiyası ilə eynidır.

Hər hansı bir mesaj mətnini təmizləyir və vəziyyəti məlumatlandırıcı vəziyyətə gətirir (səhv və ya xəbərdarlıq edilmir).

Parametrdə bir səhv varsa, doğru qaytarır.

Parametrdə bir xəbərdarlıq varsa, doğru qayıdır.

Alət bir Model daxilində təsdiqlənsə və giriş dəyəri modeldəki başqa bir alətin çıxışıdırsa, doğru qayıdır.

Xüsusiyyətlər

Parametrin giriş / çıxış istiqaməti.

Simli: "Zəruri", "İstəyə bağlı", "Alınan"

Hər bir asılı parametrin indekslərinin siyahısı.

Parametrin dəyəri.

Parametr əlçatmazsa səhvdir.

İstifadəçi dəyəri dəyişdirmişdirsə doğrudur.

Daxili doğrulama rutininin parametri yoxladığı təqdirdə doğrudur.

Parametr kateqoriyası.

Çıxış verilənlər bazasının şeması.

Parametrdəki dəyərlərə tətbiq olunan filtr.

Çıxışın çəkilməsi üçün istifadə olunan bir qat faylına (.lyr) gedən yol.

İstifadəçiyə göstəriləcək mesaj. Yuxarıdakı SetErrorMessage və SetWarningMessage-ə baxın.

Parameter asılılıqları

Sxema obyektinin istifadəsi üçün adətən parametr asılılıqlarını təyin edirsiniz. Alətin getParameterInfo metodunda asılılıqların artıq təyin oluna biləcəyi iki hal var.

  • Növü çıxarılan bir çıxış verilənlər bazası parametri üçün asılılıq, nəticənin çıxarılacağı parametr indeksidir.
  • Müəyyən giriş məlumat növləri üçün asılılıq aşağıdakı cədvəldə göstərildiyi kimi idarəetmə tərəfindən istifadə olunan məlumatları ehtiva edən parametr indeksidir.

Sahələri ehtiva edən cədvəl.

BİLGİ Maddəsi və ya BİLGİ İfadəsi

Maddələri ehtiva edən məlumat cədvəli.

Xüsusiyyətləri ehtiva edən əhatə dairəsi.

Sahə vahidləri və ya xətti vahidlər

Varsayılan vahidləri təyin etmək üçün istifadə olunan coğrafi verilənlər bazası.

Varsayılan koordinat sistemini təyin etmək üçün istifadə olunan bir iş sahəsi.

Şəbəkə Analisti Hiyerarşi Ayarları

İyerarxiya məlumatlarını ehtiva edən şəbəkə verilənlər bazası.

Geostatistik dəyər cədvəli

Cədvəlləri ehtiva edən analiz qatı.

parameterDependencies, Script Tool sihirbazının Ayardan Alındığına bərabərdir.

Bağımlılıqlar ümumiyyətlə getParameterInfo metodunda müəyyən edilir:

Dəyər

Bu, istifadəçinin daxil etdiyi və ya proqramlı olaraq təyin etdiyiniz parametrin dəyəridir. Dəyəri getParameterInfo metodunda təyin edə bilərsiniz, bu halda parametr üçün ilkin standart dəyər kimi xidmət edir. Aşağıda göstərildiyi kimi istifadəçi girişinə cavab olaraq updateParameters-də dəyəri də təyin edə bilərsiniz.

Parametr dəyər xassəsi, bir parametr doldurulmadığı təqdirdə bir obyekt qaytarır, bu vəziyyətdə dəyər Yoxdur. Parametrin doldurulmamasına qarşı qorunmaq üçün dəyərini istifadə etməzdən əvvəl bir if yoxlayın.

Aşağıdakı kod parçası, dəyərin "Fayldan Mekansal Çəkilər Al" sətirinə bərabər olub olmadığını yoxlayır. Parametr məlumat növü bir sətir olduğundan bu test işləyir.

Bir Dəyər obyekti sətir manipulyasiyasını dəstəkləmədiyi üçün, bir sətir manipulyasiya edilərkən və ya ayrıştırılacağı zaman Value obyektinin dəyər xassəsini istifadə edin. Kod nümunəsi, verilənlər bazasından qovluğu qaytarmaq üçün os.path.dirname metodundan istifadə edir.

Təsvir istisna olmaqla, doğrulamada ListFields kimi bir kataloq yolu götürən metodlardan istifadə etməyin. Alətiniz ModelBuilder-də təsdiqləndikdə verilənlər bazası mövcud olmaya bilər və metod uğursuz ola bilər və ya gözlənilməz nəticələr verə bilər.

Xüsusi ListFields vəziyyətində, Təsvir obyektinin sahələr xassəsi ekvivalent məlumat verəcəkdir.

UpdateMessages () -də bir parametr dəyəri qoymayın, çünki dəyər daxili doğrulama rutini tərəfindən təsdiqlənməyəcəkdir.

Dəyişdirilmişdir

istifadəçi bir parametrin dəyərini dəyişdirsə, məsələn, bir çıxış yolunu daxil edərək dəyişdirilmişdir. Parametr dəyişdirildikdən sonra, istifadəçi dəyəri boşaltana (boşaldır) qədər dəyişdirilir, bu halda dəyişilməz vəziyyətə qayıdır. Doğrulama kodu ilə bir dəyəri programatik olaraq dəyişdirmək, dəyişdirilmiş vəziyyəti dəyişdirmir. Yəni bir parametr üçün bir dəyər təyin etsəniz, parametrin dəyişdirilmiş vəziyyəti dəyişmir.

dəyişdirilmiş bir parametri dəyərini dəyişdirə biləcəyinizi təyin etmək üçün istifadə olunur. Nümunə olaraq, bir alətin bir xüsusiyyət sinfi parametri və bir açar söz parametri olduğunu düşünək. Xüsusiyyət sinfi nöqtələr və ya çoxbucaqlıdırsa, açar sözlər QIRMIZI, YAŞIL və MAVİ, xəttlər isə PORTANLI, SARI, BORU və AĞdır.

Tutaq ki, istifadəçi bir nöqtə xüsusiyyət sinfi daxil edir. Açar söz parametri dəyişdirilməyibsə, defolt dəyər olduğundan RED olaraq dəyəri təyin etmisiniz.

Bir sətir xüsusiyyət sinfi daxil edilirsə, açar söz parametri dəyişdirilmədiyi təqdirdə standart dəyəri ORANGE olaraq təyin edirsiniz.

Ancaq açar söz parametri istifadəçi tərəfindən dəyişdirilmişsə (yəni açar söz YEŞİL olaraq təyin edilmişdir), açar sözünü sıfırlamamalısınız - istifadəçi seçimini etdi (YAŞIL) və niyyətlərini bilmirsiniz - onlar xüsusiyyət sinfini GREEN-in etibarlı olması üçün dəyişdirə bilər və ya açar sözü dəyişdirə bilər (məsələn PURPLE-ə). GREEN, sətirlər üçün yaratdığınız açar sözlər dəstinin üzvü olmadığından, daxili doğrulama parametri səhv edir. Bu anda istifadəçinin iki seçimi var - giriş xüsusiyyət sinifini dəyişdirin və ya açar sözü dəyişdirin.

HasBeenValidated

hasBeenValidated, parametrin dəyəri istifadəçi tərəfindən son dəfə updateParameters və daxili doğrulama çağırıldığından bəri dəyişdirildikdə səhvdir. Daxili doğrulama çağırıldıqdan sonra, geoprosessinq avtomatik olaraq hər parametr üçün hasBeenValidated-i true olaraq təyin edir.

hasBeenValidated, istifadəçinin updateParameters üçün son zəngdən bəri bir dəyəri dəyişdirib-dəyişdirmədiyini təyin etmək üçün istifadə olunur. Parametrləri özünüz yoxlamaq üçün qərar verərkən bu məlumatları istifadə edə bilərsiniz.


Kataloq pəncərəsindən sürükləyərək xəritə sənədinə AutoCAD və ya MicroStation verilənlər bazası əlavə edə bilərsiniz və xəritənizə atın. Uşaq xüsusiyyət sinifinin əlavə edilməsi, forma növünə əsaslanan məlumatların alt hissəsini göstərir.

Hər bir CAD xüsusiyyət sinfi virtual atribut cədvəlini dəstəkləyir. Bu, CAD rəsmindəki xüsusiyyətlərin yalnız oxunan bir cədvəl görünüşüdür. Məlumat həndəsə və ya izahat üçün xüsusiyyət dəyərlərini, qat məlumatlarını, sənəd metadatalarını və CAD xüsusiyyətləri ilə əlaqəli istifadəçi tərəfindən yaradılan atributları əhatə edir. Bu məlumatlar simbologiya və etiketləri idarə etmək üçün istifadə edilə bilər, sorğu verilir və vizual tapşırıqlar üçün filtrləmə meyarı kimi istifadə olunur və xüsusiyyət məlumatları kimi hesablanır.


Coğrafi məkanın qurulması

Power BI, Ölkə, Ştat və Şəhər kimi bütün mətn əsaslı yer sahələrini mətn sahələri, Poçt Kodu ədədi bir sahə olaraq təsbit etdi. Ancaq bunlar coğrafi yerlərdir. Power BI-nin bu sütunları necə təyin etdiyini dəyişdirmək üçün Məlumat Bax, müvafiq sütunu seçin və bu sahələri dəyişdirin & # 8217 Properties. Çevirmək Məlumat kateqoriyası Ölkə sütununun ölkəyə, əyalətin əyalətin və ya əyalətin sütununun, şəhərin sütununun şəhərin (aşağıda göstərilmişdir) və poçt kodu sütununun poçt kodu.

Power BI bu sahələri coğrafi məkan kimi tanıyacaq. Beləliklə, bölgələrdəki performansı nəzərdən keçirmək üçün indi xəritə əsaslı vizualizasiyadan istifadə edə bilərik. Siz də yoxlaya bilərsiniz Sahələr bu sahələrin hər birinin qarşısında görünən bir coğrafi məkan etiketini görmək üçün bölmə.

Nəhayət, a yaratmalıyıq Ölçün Brüt mənfəətin% (Satış / Mənfəət) hər hansı bir ümumiləşdirmə səviyyəsində şirkətin gəlirliyini izləməyə kömək etmək üçün (bizim vəziyyətimizdə, şəhər səviyyəsində). Buna nail olmaq üçün düyməsini vurun Yeni Tədbir işarəsi Cədvəl alətləri menyu və aşağıdakı düsturu yazın.


Bütün bunlar mətnin redaktoru kimi çox yaxşı bir elementə sahib olan KML-dən istifadə edilə bilər, beləliklə, stili geometrik olaraq göstərə bilər, znaçki metoku və ekrandakı nalojeniya. Nəzərə alın ki, KML-koda daha çox znaniy və yeni bir şey hazırlansın, Google Planety Zemlya-nı düzəldin, bəziləri popraktikovavşis deyil, sadəcə KML-də effektiv şəkildə istifadə edin.

Bütün bunlar, Google Planety Zemlya və KML-kod kimi bir şey var. Navernyka vы obratili vnimanie na, çto stili uğurlu vəjную роль при отображении данных. Beləliklə, mən əvvəlcədən işləyə bilərəm.

Если определить элемент & ltStyle & gt в начале KML-sənəd və praktiki sənədlər, bu çox vacibdir ki, geometriçeskim elementləri, metkam və nalojeniyam, digər sənədləri sənədləşdirin. Tak kak один и тот же стиль можно применять к нескольким elementam, istifadə terminalı общие стили. & LtStyle & gt, daha yaxşı element və ltstyleUrl & gt. Bütün elementlərdə və ltStyle & gt-də seçim edin, əvvəllər sənədləşdiricidən istifadə etməyiniz lazım olacaqdır (#). Digər sənəddə və ltstyleUrl & gt-də istifadə olunan URL-lər yoxlanılmadı.

Fayl KML_Samples əvvəlcədən təyin edilmiş sənədləri və sənədləri təsdiq edən sənədləri təqdim edir. İstifadəyə hazırlıq sənədlərini istifadə edin - eyni zamanda daha yaxşı bir şəkildə istifadə edin. Ən yaxşı transBluePoly stili, çoxlu miqdarda istehsal olunan transubluePoly prozraчную голубую заливку və zərif məhsullar 1,5 (ən yaxşı zadan və umolçaniyu). Google-da modelləri 41-go korpusa (Polygons-a daxil edin) istifadə edin.

Siz & ltStyle & gt elementel element & ltPlacemark & ​​gt kimi bir elementar elementə sahib olmalısınız və ya əvvəlcədən təyin olunan elementləri istifadə etmirsiniz.


Yol qüsurlarını yaxalamaq üçün ArcGIS Collector istifadə

ArcGIS Collector istifadəsi sadədir və bacarıqlıdır. İOS və ya Android ağıllı telefonunuzdan və ya Tabletdən istifadə edərək, Apple App Store və ya Google Play'dən ArcGIS üçün Collector yükləyin və quraşdırın. Aşağıdakı g nümunəsində bir iPhone'da iOS istifadə olunur.

Təşkilatınız üçün URL daxil edin (məs. Http://ria.maps.arcgis.com)

İstifadəçi adınızı və şifrənizi daxil edin (ArcGIS Online) və “Giriş” düyməsini basın. Daha sonra seçə biləcəyiniz bir seçim olaraq göstərilən Yol Qüsurları xəritənizi görməlisiniz.

Seçmək üçün Yol Qüsurları xəritəsi seçimini vurun. Sonra kollektor baza xəritənizi göstərir və cari yerinizə yaxınlaşdırır. Cari yerinizin bir nöqtə və daha böyük bir dairə ilə göstərildiyini unutmayın.

Tələb edin və ətrafı yaxınlaşdırın.

Barmağınızı xəritədə vurun. Yer təfərrüatları standart iOS "paylaş" düyməsinə ilə birlikdə göstərilir (ünvan və koordinatlar).

Görünən menyudan "Buraya topla" vurun.

"Yol qüsurları" vurun və Yol qüsurları atributu giriş forması görünür.

Müfəttiş vurun və seçim siyahısı (əvvəllər daxil etdiyiniz domen dəyərləri) görünür.

Bir müfəttişin adına vurun və sonra Bitti düyməsini vurun.

Yoxlama tarixi və şərhini daxil edin.

Kamera düyməsinə vurun və foto və ya video çəkmək üçün addımları izləyin.

Verilərinizi ArcGIS Online-a saxlamaq üçün Göndər düyməsinə vurun.

Bu belədir! Artıq ilk yerinizi tutdunuz və kollektordan istifadə edərək atributları təyin etdiniz. İndi Collector ilə oynamaq və onunla tanış olmaq üçün əlverişli bir zamandır. Daha bir neçə yer əlavə edin, cari yerinizdə bir qüsur əlavə etmək üçün + düyməsini istifadə edə bilərsiniz. Artıq daxil etdiyiniz məlumatları düzəldə, yerini dəyişə, bir qüsuru və atributları kopyalaya və mövcud bir qüsura yol göstərə bilərsiniz.


Bunlar tablodakı xəritə qatını fərdiləşdirmək üçün aşağıdakı addımlardır:
mən. Ölçülər altındakı Yer sahəsini sağ vurun
ii. Coğrafi roluna gedin və Əyalət / Əyaləti seçin:

Addım. 2 Xəritəyə Data Layer əlavə edin

iii. Məkanı cüt vurun. Enlem (yaradılan) avtomatik olaraq Satırlara, Boylam (yaradılan) isə avtomatik olaraq Sütunlara yerləşdirilir. Yer həbi avtomatik olaraq Detallar mülkiyyətinə yerləşdirilir.
Show Me How - Tableau TreeMap haqqında oxuyun
iv. İşarələr kartının altındakı açılır düyməni vurun və işarəni Şəkil olaraq dəyişdirin:

Addım. 4 Xəritəyə Data Layer əlavə etmək

v. Tədbirlərdən hesablanmış sahəni Faiz nisbətini İşarələr kartının şəklinə çəkin.
vi. Forma əfsanəsinin yuxarı sağ açılan oxunu vurun və Barlar palitrasından aşağıdakı formaları təyin edin. Təyin etmək üçün solda bir maddəni seçin Verilənləri seçin sütununa vurun və sonra sağ sütundan təyin etmək istədiyiniz müvafiq işarəni vurun.

Addım. 6 Xəritəyə Data Layer əlavə etmək

vii. Bu reseptdə kölgəli çubuqların 21-40% -i, dörd kölgəli çubuğun isə & gt 60% -i təyin edilmir.
viii. Tamamlandıqdan sonra Tamam düyməsini vurun.
Tableau Custom Data View haqqında məlumatınız var
ix. Xəritədəki nişanları bir az daha böyütmək üçün İşarələr kartındakı Ölçü düyməsini vurun və sürüşdürəni sağa sürün.
x. Tədbirlər hesablanan sahəni İşarələr kartındakı Faiz nisbətini rəngə sürükləyin.
xi. Tədbirlərdən sahəni sürüşdürün Ev heyvanları olan ev təsərrüfatlarının nisbəti Marks kartındakı Etiketə.
xii. Xəritə menyusuna gedin və Xəritə Layers seçin:

Addım. 12 Xəritəyə Məlumat Qatı əlavə etmək

xiii. Görünən Xəritə Layers kenar çubuğunda aşağıdakıları edin:

  • Xəritə Katmanları altında Sahil xətti və Əyalət / Vilayət Sərhədlərini yoxlayın
  • Data Layer altında, Konut Vahidi Böyümə% 2016-2021 seçin. Data Layer, Narıncı-Mavi Diverging rəng palitrasından istifadə edin

Addım. 13 Xəritəyə Məlumat Qatı əlavə etmək

xiv. Hazır olduqda Xəritə Layers kenar çubuğunu bağlayın.
Bunların hamısı Tableau Təlimində Xəritəyə Data Layer əlavə et. Ümid edirəm izahımızı bəyənəcəksiniz.


Pandalar - birdən çox sütunda uyğun dəyərləri olan sətirləri tapın və təkrarlayın və başqa bir sütunda dəyəri çoxalın

Bu sual əvvəlki suala bir addım daha qalır:

Cədvəli redaktə etdim ki, daha az qarışıqlığa səbəb olacaq

Əvvəlcə aşağıda bir məlumat cədvəlimiz var:

Etmək istədiyim şey matç satırlarını tapmaq və sonra bir hesablama aparmaqdır.

və sonra üç sütun ['id'], ['A'] və ['nəticə'] ilə yeni bir verilənlər bazası yaradın.

@Jon Clements ♦ əvvəlki sualımı aşağıda çox səliqəli bir kodla cavablandırdı:

İndi sıra_b ilə uyğunlaşdıqdan sonra row_a-nı təkrarlamamaq üçün bir üsul varmı? Başqa sözlə, bu iki uyğun satırı bir cüt hesab edirəm. Row_a və row_b cüt olduqdan sonra, sonrakı döngə row_a-nı görməyəcəkdir (row_b başqa bir sıra ilə uyğunlaşana qədər row_b deyil).

Misal olaraq groupby (). Agg ('prod', 'count') funksiyasını götürün, ümid edirəm ki, yaradılan bütün nəticələrin 'sayı' 2 (yalnız ['count'] == 2 olan bir filtr deyil). Bunun groupby () istifadə edərək işə yarayacağını düşünmürəm Yəni for-loop kimi mexanizmi bu sualı həll edə biləcəyini düşünürəm? yoxsa daha yaxşı bir metod varmı?

Beləliklə, gözlənilən nəticə indi (çünki id1 və id3 cütlüyə çevrildiyi üçün id9-a birləşməyəcək və qalanları üçün id3 təkrarlanması id1-lə uyğun gəlməyəcəkdir. Beləliklə, aşağıdakı cədvəl üçün birinci sətirin nəticəsi 80, 160 deyil və ikinci sıra da deyil):

İngilis dilim o qədər yaxşı deyil, ona görə sualımı aydın şəkildə izah edib-etməyəcəyimə əmin deyiləm. Əgər aydın deyilsinizsə, mənə bir şey soruşun.


Python Kılavuzu ilə ArcGIS-in proqramlaşdırılması 85-dən çox resept üzərində Python 2nd Edition istifadə edərək masaüstündəki geo-işləmə tapşırıqları üçün ArcGIS-in avtomatlaşdırılmasını öyrətmək pdf pdf

Bütün hüquqlar qorunur. Bu kitabın heç bir hissəsi, tənqidi məqalələrdə və ya icmallarda yerləşdirilmiş qısa sitatlar halları istisna olmaqla, nəşriyyatın əvvəlcədən yazılı icazəsi olmadan çoxaldıla, axtarış sistemində saxlanıla və ya hər hansı bir şəkildə və ya hər hansı bir şəkildə ötürülə bilməz.

Təqdim olunan məlumatların dəqiqliyini təmin etmək üçün bu kitabın hazırlanmasında hər cür səy göstərilmişdir. Bununla birlikdə, bu kitabdakı məlumatlar açıq və ya nəzərdə tutulan bir zəmanət olmadan satılır. Nə müəllif, nə də Packt Publishing və onun satıcıları və distribyutorları bu kitabın birbaşa və ya dolayı yolla vurduğu və ya iddia edildiyi iddia edilən zərərlərə görə məsuliyyət daşımayacaqlar.

Packt Publishing, bu kitabda qeyd olunan bütün şirkətlər və məhsullar haqqında ticarət markası məlumatlarını, uyğun kapital istifadə edərək təqdim etməyə çalışdı. Bununla birlikdə, Packt Publishing bu məlumatların doğruluğuna zəmanət verə bilməz.

İlk dəfə yayımlandı: Fevral 2013

İstehsal mənbəyi: 1230715

Packt Publishing Ltd. Livery Place tərəfindən nəşr edilmişdir

Müəllif haqqında

Eric Pimpler

(http://geospatialtraining.com/) və Esri, Google Earth / Maps, açıq mənbə texnologiyasından istifadə edərək CİS həllərinin tətbiqi və tədrisi 20 ildən artıq təcrübəyə malikdir. Hal-hazırda Eric, Python ilə ArcGIS skriptlərinə və JavaScript istifadə edərək xüsusi ArcGIS Server veb və mobil tətbiqetmələrin inkişafına diqqət yetirir. Eric müəllifidir ArcGIS ilə proqramlaşdırma Python yemək kitabı və veb qurmaqJavaScript ilə mobil ArcGIS Server Tətbiqləri, ikisi də Packt Publishing.

Rəyçilər haqqında

Məhəmməd Alhessi

Stuttgart Universitetində CBS inkişaf etdiricisi olaraq çalışmış və burada Java və Python istifadə edərək Geoprosessinq alətlərini proqramlaşdırmışdır. Yerli icma üçün məsləhət verən bir çox yerli CİS layihəsində iştirak edir. Hal-hazırda Fələstin, Qəzza İslam Universitetində müəllimdir. Həm də Qəzza Universitetinin Tətbiqi Elmlər Kollecində dərslər keçirir.

Məhəmməd, Stuttgart Universitetinin geomatika mühəndisliyi üzrə magistr dərəcəsinə malikdir. O, həmçinin Qəzza İslam Universitetində inşaat mühəndisliyi üzrə bakalavr dərəcəsinə malikdir.

Matthew Bernardo

Rahul Bhosle

Kristofer Lasko

Hal-hazırda coğrafi elmlər oxuduğu Merilend Universitetinin doktorantıdır. Daha əvvəl NASA-nın Goddard Space Uçuş Mərkəzində və NASA-nın Jet Propulsion Laboratoriyasında çalışıb. Merilend Universitetində bir GIS və məsafədən araşdırma analitiki olaraq da çalışmışdır. İndiki araşdırması Vyetnamda məhsul qalığının yandırılmasına yönəlmişdir.

Veb saytına http://terpconnect.umd.edu/ saytından baxmaq olar

Ann Stark

https://gisstudio.wordpress.com/. Strateji planlaşdırma, proseslərin avtomatlaşdırılması və CİS inkişaf xidmətləri göstərən bir CBS konsaltinq şirkətinə sahib olan Salish Coast Sciences.

Www.PacktPub.com

Dəstək sənədləri, e-kitablar, endirim təklifləri və s

Kitabınızla əlaqəli dəstək sənədləri və yükləmələr üçün www.PacktPub.com saytına daxil olun.

Packt-in PDF və ePub sənədləri ilə birlikdə nəşr olunan hər kitabın eBook versiyasını təqdim etdiyini bilirdinizmi? Www.PacktPub.com saytından e-kitab versiyasına keçə bilərsiniz və çap kitabı müştərisi olaraq e-kitab nüsxəsində endirim hüququnuz var. Bizimlə əlaqə qurun

Daha çox məlumat üçün [email protected]com.

Www.PacktPub.com saytında pulsuz texniki məqalələr toplusunu da oxuya, bir sıra pulsuz xəbər bülletenlərinə qeydiyyatdan keçə və Packt kitablarında və eBooks-da xüsusi endirimlər və təkliflər əldə edə bilərsiniz.

İT suallarınız üçün dərhal həll yollarına ehtiyacınız var? PacktLib, Packt-in onlayn rəqəmsal kitab kitabxanasıdır. Burada, Packt'ın bütün kitabxanalarını axtara, əldə edə və oxuya bilərsiniz.

Niyə abunə olursan?

f Packt tərəfindən nəşr olunan hər kitabda tamamilə axtarış

f Məzmunu kopyalayın, yapışdırın, çap edin və yer imi əlavə edin

f Tələb olunduqda və veb brauzer vasitəsilə əldə edilə bilər

Packt hesab sahibləri üçün pulsuz giriş

Mündəricat

Ön söz v

Fəsil 1: ArcGIS üçün Python Dilinin Əsasları

Python skriptinin inkişafı üçün IDLE istifadə 2

ArcGIS Python pəncərəsindən istifadə 6

Python dilinin əsasları 9

Fəsil 2: Xəritə sənədlərini və təbəqələrini idarə etmək

Cari xəritə sənədinə istinad 32

Diskdəki xəritə sənədlərinə istinad 34

Bir xəritə sənədində qatların siyahısını əldə etmək 35

Katmanların siyahısının məhdudlaşdırılması 37

Seçilmiş xüsusiyyətlərə yaxınlaşdırma 39

Xəritə ölçüsünün dəyişdirilməsi 42

Xəritə sənədinə qat qatmaq 44

Bir xəritə sənədinə qatların daxil edilməsi 46

Qat simbologiyası yenilənir 49

Katman xassələrinin yenilənməsi 52

Bir məlumat çərçivəsindəki zamanla təmin olunan qatlarla işləmək 57

Fəsil 3: Qırılmış Məlumat Bağlantılarını tapmaq və düzəltmək

Giriş 65 Xəritə sənədinizdə və təbəqə sənədlərinizdə pozulmuş məlumat mənbələrinin tapılması 66 MapDocument ilə qırılmış məlumat mənbələrinin düzəldilməsi.

Fəsil 4: Xəritə istehsalı və çapının avtomatlaşdırılması

Mizan elementlərinin siyahısı yaradılması 84

Mizan elementlərinə unikal bir adın verilməsi 86 ListLayoutElements () tərəfindən qaytarılmış məkan elementlərinin məhdudlaşdırılması 90 Mizan elementlərinin xassələrinin yenilənməsi 91

Mövcud printerlərin siyahısını əldə etmək 94

PrintMap () ilə xəritələrin çap edilməsi 95

Xəritəni PDF sənədinə ixrac etmək 96

Xəritəni bir şəkil sənədinə ixrac etmək 98

Data Driven Pages və ArcPy Xəritəçəkmə ilə xəritə kitabının hazırlanması 104 Bir xəritə sənədinin ArcGIS Server xidmətinə yayımlanması 109

Fəsil 5: Geoprosessinq Vasitələrinin Skriptlərdən İcra Edilməsi

Geoprosessinq alətlərinin tapılması 118

Alət qutusu təxəllüsü 122 alınır

Geoprosessinq alətlərinin skriptdən icrası 125 Bir alətin nəticəsini başqa bir alətə giriş kimi istifadə etmək 128

Fəsil 6: Xüsusi Geoprosessinq Vasitələrinin yaradılması

Xüsusi bir geoprosessinq alətinin yaradılması 131

Python alət qutusu yaratmaq 149

Fəsil 7: Verilənlərin sorğusu və seçimi

Giriş 161 Uyğun bir atribut sorğu sintaksisinin qurulması 162

167. Xüsusiyyət təbəqələrinin və cədvəl görünüşlərinin yaradılması

Xüsusiyyətləri və sətirləri Atributla Qatı Seçin aləti ilə seçmək 171 Məkana görə seç alətiylə xüsusiyyətlərin seçilməsi 175 Məkan və atribut sorğusunu Yerə görə seç alətiylə birləşdirmək 178

Fəsil 8: Xüsusiyyət ilə ArcPy Data Access Modulundan istifadə

Dərslər və masalar

Giriş 182 SearchCursor 184 ilə bir xüsusiyyət sinifindən xüsusiyyətlərin alınması

187-ci maddə ilə qeydlərin süzülməsi

Həndəsə işarələri ilə imlecin performansının yaxşılaşdırılması 188

InsertCursor 192 ilə sətirlər əlavə etmək

UpdateCursor ilə sətirlərin silinməsi 201 Düzəliş sessiyasına sətirlərin daxil edilməsi və yenilənməsi 203 Xüsusiyyət sinifindən həndəsənin oxunması 207 Kataloqlarda gezinmek üçün Walk () istifadə

Fəsil 9: CİS məlumatlarının siyahısı və təsviri

ArcPy siyahısı funksiyaları ilə işləmək 214

Bir xüsusiyyət sinifindəki və ya cədvəldəki sahələrin siyahısını əldə etmək 217 Təsvir məlumatlarını qaytarmaq üçün Təsvir et () funksiyasından istifadə.

Haqqında təsviri məlumat qaytarmaq üçün Təsvir () funksiyasından istifadə

Fəsil 10:

Eklentilərlə ArcGIS İnterfeysinin fərdiləşdirilməsi

239. Əlavənin quraşdırılması və sınanması

Bir vasitə əlavəsi yaratmaq 245

Fəsil 11: Xəta İdarəetmə və Giderme

Giriş 251 Varsayılan Python səhv mesajının araşdırılması 252 Python istisna işləmə strukturlarının əlavə edilməsi (try / except / else) 253 GetMessages () ilə alət mesajlarının alınması

Fəsil 12: Advanced ArcGIS üçün Python istifadə

ArcGIS REST API 262 ilə işə başlamaq

HTTP istəklərinin edilməsi və Python 268 ilə cavabı təhlil etmək ArcGIS REST API və Python 271 ilə qat məlumatları əldə etmək ArcGIS REST API və Python 274 ilə xəritə ixracı ArcGIS REST API və Python 278 Geocoding ilə Esri World Geocoding ilə xəritə xidməti sorğu etmək Xidmət 282

FieldMap və FieldMappings istifadə 284

Bir alətə çox dəyərli giriş təmin etmək üçün bir ValueTable istifadə 291

ArcGIS Pro 298 üçün Python quraşdırılır

ArcGIS-in Masaüstü Python kodunun ArcGIS Pro 298-ə çevrilməsi

Əlavə A:

Python skriptlərinin avtomatlaşdırılması

Komut satırından Python skriptlərinin işlədilməsi 302 Komanda xətti girişini tutmaq üçün sys.argv [] istifadə edərək 308 Toplu sənədlərə Python skriptlərinin əlavə edilməsi 310 Toplu sənədlərin təyin olunmuş vaxtlarda işləməsinin planlaşdırılması 311

Əlavə B: Hər CİS Proqramçısının Bilməli olduğu Beş Python Tarifləri 319

FTP serverindən sənədlərin alınması 327

Ön söz

ArcGIS, Esri'ye məxsus bir standart standart coğrafi məlumat sistemidir.

Bu kitab, ArcGIS for Desktop mühiti üçün geo-işləmə skriptləri, alətlər və qısa yollar yaratmaq üçün Python proqramlaşdırma dilindən necə istifadə edəcəyinizi göstərəcəkdir.

Geoprosessinq tapşırıqlarını avtomatlaşdırmaq, xəritə sənədlərini və təbəqələrini idarə etmək, qırıq məlumatlar əlaqələrini tapmaq və düzəltmək, xüsusiyyət sinifləri və cədvəllərindəki məlumatları redaktə etmək üçün ArcGIS Desktop ilə Python proqramlaşdırma dilini Masaüstü ilə necə istifadə edəcəyinizi göstərərək sizi daha təsirli və səmərəli bir GIS mütəxəssisi halına gətirəcəkdir. və daha çox şey.

Python Cookbook Second Edition ilə ArcGIS Proqramlaşdırma, starts by covering fundamental Python programming concepts in an ArcGIS for Desktop context. Using a how-to instruction style, you'll then learn how to use Python to automate common important ArcGIS

In this book, you will also cover specific ArcGIS scripting topics that will help save you time and effort when working with ArcGIS. Topics include managing map document files, automating map production and printing, finding and fixing broken data sources, creating custom geoprocessing tools, and working with feature classes and tables, among others.

What this book covers

Fəsil 1, Fundamentals of the Python Language for ArcGIS, will cover many of the basic language constructs found in Python. Initially, you'll learn how to create new Python scripts or edit existing scripts. From there, you'll get into language features, such as adding comments to your code, variables, and the built-in typing systems that makes coding with Python easy and compact. Furthermore, we'll look at the various built-in data types that Python offers, such as strings, numbers, lists, and dictionaries. In addition to this, we'll cover statements, including decision support and looping structures for making decisions in your code, and/or looping through a code block multiple times.

Fəsil 2, Managing Map Documents and Layers, will use the ArcPy mapping module to manage map document and layer files. You will learn how to add and remove geographic layers from map document files, insert layers into data frames, and move layers around within the map document. You will also learn how to update layer properties and symbology.

Fəsil 3, Finding and Fixing Broken Data Links, will teach you how to generate a list of broken data sources in a map document file and apply various ArcPy mapping functions to fix these data sources. You will learn how to automate the process of fixing data sources across many map documents.

Fəsil 4, Automating Map Production and Printing, will teach you how to automate the process of creating production-quality maps. These maps can then be printed, exported to image file formats, or exported to PDF files for inclusion in map books.

Fəsil 5, Executing Geoprocessing Tools from Scripts, will teach you how to write scripts that access and run geoprocessing tools provided by ArcGIS.

Fəsil 6, Creating Custom Geoprocessing Tools, will teach you how to create custom geoprocessing tools that can be added to ArcGIS and shared with other users. Custom geoprocessing tools are attached to a Python script that processes or analyzes geographic data in some way.

Fəsil 7, Querying and Selecting Data, will teach you how to execute the Select by Attribute and Select by Location geoprocessing tools from a script to select features and records. You will learn how to construct queries that supply an optional where clause for the Select by Attribute tool. The use of feature layers and table views as temporary datasets will also be covered.

Chapter 9, Listing and Describing GIS Data, will teach you how to obtain descriptive information about geographic datasets through the use of the ArcPy Describe function. As the first step in a multistep process, geoprocessing scripts frequently require that a list of geographic data be generated followed by various geoprocessing operations that can be run against these datasets.

Fəsil 10, Customizing the ArcGIS Interface with Add-ins, will teach you how to customize the ArcGIS interface through the creation of Python add-ins. Add-ins provide a way of adding user interface items to ArcGIS for Desktop through a modular code base designed to perform specific actions. Interface components can include buttons, tools, toolbars, menus, combo boxes, tool palettes, and application extensions. Add-ins are created using Python scripts and an XML file that define how the user interface should appear.

Chapter 11, Error Handling and Troubleshooting, will teach you how to gracefully handle errors and exceptions as they occur while a geoprocessing script is executing. ArcPy and Python errors can be trapped with the Python try/except structure and handled accordingly.

Chapter 12, Using Python for Advanced ArcGIS, covers the use of the ArcGIS REST API with Python to access services exposed by ArcGIS Server and ArcGIS Online. You will learn how to make HTTP requests and parse the responses, export maps, query map services, perform geocoding, and more. Also covered in this chapter are some miscellaneous topics related to ArcPy FieldMap and FieldMappings, as well as working with ValueTables.

Chapter 13, Using Python with ArcGIS Pro, covers some distinctions between the new ArcGIS Pro environment and ArcGIS for Desktop related to Python and, in particular, the Python Window for writing and executing code.

Appendix A, Automating Python Scripts, will teach you how to schedule geoprocessing scripts to run at a prescribed time. Many geoprocessing scripts take a long time to fully execute and need to be scheduled to run during nonworking hours on a regular basis. You will learn how to create batch files containing geoprocessing scripts and execute these at a prescribed time.

Appendix B, Five Python Recipes Every GIS Programmer Should Know, will teach you how to write scripts that perform various general purpose tasks with Python. Tasks, such as reading and writing delimited text files, sending e-mails, interacting with FTP servers, creating ZIP files, and reading and writing JSON and XML files, are common. Every GIS programmer should know how to write Python scripts that incorporate these functionalities.

What you need for this book

Who this book is for

Programming ArcGIS with Python Cookbook, Second Edition, is written for GIS professionals who wish to revolutionize their ArcGIS workflow with Python. Whether you are new to ArcGIS or a seasoned professional, you almost certainly spend time each day performing various geoprocessing tasks. This book will teach you how to use the Python programming language to automate these geoprocessing tasks and make you a more efficient and effective GIS professional.

Bölmələr

In this book, you will find several headings that appear frequently (Getting ready, How to do it, How it works, There's more, and See also).

To give clear instructions on how to complete a recipe, we use these sections as follows:

Getting ready

This section tells you what to expect in the recipe, and describes how to set up any software or any preliminary settings required for the recipe.

How to do it…

This section contains the steps required to follow the recipe.

How it works…

This section usually consists of a detailed explanation of what happened in the previous section.

There's more…

This section consists of additional information about the recipe in order to make the reader more knowledgeable about the recipe.

See also

Conventions

In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.

Code words in text are shown as follows: "we have loaded the ListFeatureClasses.py

A block of code is set as follows:

# Fetch each feature from the cursor and examine the extent # properties and spatial reference

for row in arcpy.da.SearchCursor(fc, [&#[email protected]"]): # get the extent of the county boundary

# print out the bounding coordinates and spatial reference print("XMin: " + ext.XMin)

print("XMax: " + ext.XMax) print("YMin: " + ext.YMin) print("YMax: " + ext.YMax)

print("Spatial Reference: " + ext.spatialReference.name)

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

# For each row print the Object ID field, and use the [email protected] # token to access geometry properties

with arcpy.da.SearchCursor(fc, (&#[email protected]", &#[email protected]")) as cursor:

print("Feature <0>has an area of <1>".format(row[0], row[1]))

Any command-line input or output is written as follows:

[<map layer u'City of Austin Bldg Permits'>, <map layer u'Hospitals'>, <map layer u'Schools'>, <map layer u'Streams'>, <map layer u'Streets'>,

New terms and important words are shown in bold. Words that you see on the screen, in menus or dialog boxes for example, appear in the text like this: "go to Start | All Programs |

Warnings or important notes appear in a box like this.

Tips and tricks appear like this.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or disliked. Reader feedback is important for us as it helps us develop titles that you will really get the most out of.

To send us general feedback, simply e-mail [email protected], and mention the book's title in the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide at www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the example code

You can download the example code files from your account at http://www.packtpub.com

for all the Packt Publishing books you have purchased. If you purchased this book elsewhere, you can visit http://www.packtpub.com/support and register to have the files e-mailed

Errata

Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you could report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded to our website or added to any list of existing errata under the Errata section of that title.

To view the previously submitted errata, go to https://www.packtpub.com/books/ content/support and enter the name of the book in the search field. The required

information will appear under the Errata section.

Piracy

Piracy of copyrighted material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works in any form on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

Please contact us at [email protected] with a link to the suspected pirated material.

We appreciate your help in protecting our authors and our ability to bring you valuable content.


Videoya baxın: Visual studio code ortamına python eklentisi