Skip To Content

Oblicz pole

Notatka:

Ta funkcja jest aktualnie obsługiwana tylko w przeglądarce map Map Viewer Classic (wcześniej noszącej nazwę Map Viewer). Będzie ona dostępna w przyszłej wersji nowej przeglądarki map Map Viewer.

Oblicz pole Narzędzie Oblicz pole oblicza wartości nowych lub istniejących pól. Dane wynikowe zawsze będą miały postać nowej warstwy w portalu ArcGIS Enterprise.

Analiza z użyciem narzędzi GeoAnalytics Tools

Analiza z użyciem narzędzi GeoAnalytics Tools jest uruchamiana przy zastosowaniu przetwarzania rozproszonego na wielu komputerach i rdzeniach ArcGIS GeoAnalytics Server. Narzędzia GeoAnalytics Tools oraz narzędzia do standardowej analizy obiektowej w oprogramowaniu ArcGIS Enterprise mają różne parametry i możliwości. Więcej informacji o tych różnicach można znaleźć w sekcji Różnice między narzędziami analizy obiektowej.

Przykłady

Załóżmy, że zebrano dane o sprzedaży w sieci supermarketów dotyczące całego kraju. Obecnie w istniejącym polu o nazwie TotalSales znajdują się informacje o łącznej wartości sprzedaży w poszczególnych latach, a istnieje potrzeba obliczenia łącznej sprzedaży w każdej z lokalizacji. Pole to ma być reprezentowane przez sumę łącznej sprzedaży w latach 2016 i 2017. Używając tych pól w wyrażeniu, można obliczyć wartość pola jako $feature["Sales2016"] + $feature["Sales2017"].

Załóżmy, że dysponujesz odczytami GPS zawierającymi informacje o lokalizacji, czasie, identyfikatorach autobusów i prędkości autobusów w mieście. Chcesz utworzyć nowe pole o nazwie SpeedFrom3, w którym znajdzie się średnia prędkość z trzech ostatnio zarejestrowanych odczytów GPS dla każdego obiektu. Zostanie do tego użyte obliczenie zawierające dane o ścieżkach, w którym ścieżka jest wyznaczana przez identyfikator autobusu. Obliczenie służące do określania średniej prędkości z trzech poprzednich etapów czasowych i bieżącego etapu czasowego ma postać average($track.field["speed"].history(-4)).

Uwagi dotyczące korzystania

W narzędziu Oblicz pola może używać tabel i obiektów punktowych, liniowych oraz powierzchniowych.

Można obliczać wartości dla jednego pola na raz.

Wartości można obliczać dla pola, które już istnieje, lub można utworzyć nowe pole, podając jego nazwę.

Wyrażenia są tworzone w języku Arcade.

Dowiedz się więcej o wyrażeniach w języku Arcade w narzędziu Oblicz pole

Obliczenia mogą opcjonalnie zawierać dane o ścieżkach. W równaniach z danymi o ścieżkach używane są wyrażenia w języku Arcade z funkcjami ścieżek.

Aby dodać obliczenie z danymi o ścieżkach, należy wykonać następujące czynności:

  • Użyj warstwy, która zawiera dane czasowe typu Moment.
  • Wybierz opcję Wyrażenie zawiera dane o ścieżkach.
  • Wybierz pola używane do identyfikowania ścieżek.

Ścieżki są reprezentowane przez unikalną kombinację jednego lub większej liczby pól ścieżki. Na przykład jeśli pola flightID i Destination są używane jako identyfikatory ścieżek, obiekty [ID007, Solden] i [ID007, Tokio] będą znajdować się na dwóch osobnych ścieżkach, ponieważ mają inne wartości w polu Destination.

Stosowanie ścieżek z segmentami o granicach wyznaczanych przez przedziały czasu o określonym przedziale czasu. Jeśli na przykład granica przedziału czasu zostanie skonfigurowana na 1 dzień, począwszy od 9:00 rano w dniu 1 stycznia 1990, to każda ścieżka będzie obcinana dla każdego dnia o godz. 9:00 rano i analizowana w tym segmencie. Ten podział to prosty sposób na skrócenie czasu przetwarzania, ponieważ pozwala szybko tworzyć mniejsze ścieżki na potrzeby analizy. Jeśli podział za pomocą granic wyznaczanych przez powtarzalne przedziały czasu ma sens w danej analizie, jest to zalecana metoda w przypadku przetwarzania dużych zbiorów danych. Aby skonfigurować granice czasowe, analiza musi uwzględniać dane o ścieżkach.

Obiekty wynikowe będą zawierały pola z obiektów wejściowych. Jeśli zostały obliczone wartości w nowym polu, to pole także zostanie dołączone.

Jeśli zaznaczono opcję Użyj bieżącego zasięgu mapy, analizowane będą tylko obiekty widoczne w bieżącym zasięgu mapy. Jeśli opcja ta nie została zaznaczona, przeanalizowane zostaną wszystkie obiekty wejściowe w warstwie wejściowej, nawet jeśli znajdują się one poza bieżącym zasięgiem mapy.

Ograniczenia

Modyfikować można tylko jedno pole na raz.

Narzędzie Oblicz pole zawsze tworzy nową warstwę obiektową i nigdy nie modyfikuje wejściowego zestawu danych.

Przykład użycia interfejsu ArcGIS API for Python

Narzędzie Oblicz pole jest dostępne za pośrednictwem interfejsu ArcGIS API for Python.

Ten przykład ilustruje obliczanie nowego pola reprezentującego rok wystąpienia trzęsienia ziemi. Zmodyfikowane dane są następnie przedstawiane przy użyciu struktury danych Pandas.DataFrame.


# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import manage_data
from arcgis.features import FeatureLayer


# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)
if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Define the feature layer you'll use for analysis
earthquake_data_url = "https://sampleserver6.arcgisonline.com/arcgis/rest/services/Earthquakes_Since1970/FeatureServer/0"
earthquake_data = FeatureLayer(earthquake_data_url)

# Calculate the year number from the date_ field
calculate_field_result = manage_data.calculate_fields(input_layer = earthquake_data, 
                                                      field_name = "year_num", 
                                                      data_type = "Integer",
                                                      expression = "Year($feature.date_)", 
                                                      output_name = "Earthquake_occurence_years")

# Visualize the results as a Pandas DataFrame when running Python in a Jupyter Notebook
import pandas as pd
features = calculate_field_result.layers[0].query()
df = pd.DataFrame.from_records(pd.DataFrame(features.value['features'])["attributes"])
df

Podobne narzędzia

Użyj narzędzia Oblicz pole, aby obliczyć wartości obiektów w nowym lub istniejącym polu. Do rozwiązywania podobnych, ale nieco innych problemów, mogą być przydatne inne narzędzia.

Narzędzia analizy Map Viewer Classic

Aby wykryć obiekty w warstwie z danymi czasowymi, użyj narzędzia Wykryj zdarzenia.

Narzędzia analizy aplikacji ArcGIS Desktop

Narzędzie Oblicz pole jest także dostępne w aplikacji ArcGIS Pro.

Aby obliczyć wartości w danych wejściowych i zmodyfikować istniejące dane, użyj narzędzia Oblicz pole ze skrzynki narzędziowej Zarządzanie danymi w aplikacji ArcGIS Pro.

Aby możliwe było uruchomienie tego narzędzia z poziomu aplikacji ArcGIS Pro, aktywny portal musi być w wersji Enterprise 10.6 lub nowszej. Należy zalogować się do portalu przy użyciu konta z uprawnieniami do wykonywania analizy obiektowej w ramach analizy geoprzestrzennej.