Select to view content in your preferred language

Formát datumového sloupce tabulky v ArcGIS Pro

1037
0
05-29-2023 11:55 PM
Labels (2)
MartinKrál
Esri Contributor
0 0 1,037

Pro zobrazení hodnot ve sloupcích s časovými údaji můžeme v ArcGIS Pro využít různé způsoby formátování. Můžeme tak například nastavit, že se údaj má zobrazit pouze jako datum ve tvaru 29-05-2023, nebo jako datum s časem, vybrat můžeme i jen některé části, jako například pouze čas, pouze rok, nebo třeba jako konkrétní, lokálnímu nastavení odpovídající den v týdnu.

Formátování numerických a datumových sloupců – přehled v dokumentaci Esri.

V případě, kdy je pro nás důležitá i informace o dnu v týdnu, je možné nastavit masku na dd.MM.yyyy (dddd). Místo znaků dddd pak ArcGIS Pro doplní odpovídající název dne v týdnu.

Z kontextové nabídky vrstvy Data Design – Fields pro daný datumový sloupec nastavíme formát custom a do dalšího pole námi zvolenou kombinaci jako masku.

Screenshot_custom_date_format.png

Screenshot_custom_date_result.png

 

Pokud se setkáme s případem (například u vrstev z SDE), že dialogové okno nenabízí tak košatou možnost přizpůsobení nebo konkrétní námi hledaný formát, je možné jej nastavit přímo v CIM modelu vrstvy prostřednictvím funkcí Pythonu.

(CIM je specifikace kartografického informační modelu, která slouží k definici kartografických vlastností datových sad v prostředí ArcGIS. Specifikace CIM je reprezentována ve formátu JSON a používá se nejen pro tvorbu webových aplikací, ale můžete ji využít také pro úpravu projektů v ArcGIS Pro včetně symboliky vrstev, obsahu map, výkresů a datových zdrojů. Dokumentována je na GitHubu Esri.

Editace údajů v CIM je prakticky již editací zdrojových dat projektu či mapy, proto doporučujeme používat pouze k tomu určené nástroje a needitovat JSON přímo. Před jakoukoliv editací CIM je ale v každém případě vhodné vytvořit si zálohu projektu.)

Tedy:

  • Nastavte formát sloupce na jeden z těch, které máte v nabídce, aby skript měl co upravovat. 
  • V python konzoli ArcGIS Pro spusťte skript, který pro danou mapu (Map3) a vrstvu (ulice_liben)  a sloupec (platiod) nastaví požadovanou masku.

 

 

p = arcpy.mp.ArcGISProject('current')
m = p.listMaps('Map3')[0]
lyr = m.listLayers('ulice_liben')[0]
cim_lyr = lyr.getDefinition('V2')
for fd in cim_lyr.featureTable.fieldDescriptions:
    if fd.fieldName == "platiod":
        fd.numberFormat.format="dd.MM.yyyy' ('dddd')'"
lyr.setDefinition(cim_lyr)