Map Legacy 위젯
Map Legacy는 객체의 위치와 지역별 값을 지도에 표시합니다. 추가 기능 개발은 예정되어 있지 않지만 지원은 유지됩니다. 새 모듈이나 기존 구성을 갱신할 때에는 Map 위젯을 우선 고려합니다.
위젯 선택
| 요구 사항 | Map Legacy | Map |
|---|---|---|
| 큰 객체 집합 | 제한적 지원 | 지원 |
| 시간 종속 스타일 | 지원하지 않음 | 지원 |
| 복잡한 도형에 맞춘 성능 최적화 | 지원하지 않음 | 지원 |
| 모바일 | 지원 | 지원하지 않음 |
| WebGL을 사용할 수 없는 환경 | 지원 | 지원하지 않음 |
Legacy는 MapboxGL을 사용하고 브라우저에서 WebGL을 지원하지 않으면 Leaflet으로 렌더링합니다. 아래에서 설명하는 Legacy의 시계열 요약값 표시와 Time stepper의 객체 필터는 각각 사용할 수 있습니다.
배경인 Base layer와 그 위에 데이터를 그리는 Overlay layer를 구성합니다. 기본 지도 영상은 Mapbox에서 가져오며 기존 기업용 라이선스가 적용됩니다. Mapbox를 프록시할 수 없는 보안 네트워크에서는 사용자 배경 소스를 구성할 수 있습니다.
레이어 종류
| 유형 | 표현과 예 |
|---|---|
| Point | 객체마다 geopoint의 위도와 경도에 점 또는 마커를 그립니다. 병원 위치를 병상 여유 수에 따라 색칠하는 경우입니다. |
| Cluster | 가까운 geopoint들을 묶고 개수, 합계나 평균 등으로 크기와 색상을 정합니다. 여러 기상 관측소의 분포를 볼 때 적합합니다. |
| Choropleth | 국가나 주 같은 지역을 속성값 또는 지역 내 객체 집계값에 따라 색칠합니다. 인구밀도와 H3 셀별 계산에도 사용합니다. |
| Line segment | 두 점을 선으로 연결합니다. 출발 공항과 도착 공항 사이의 항로를 표현할 수 있습니다. |
| Static | 객체 데이터 외의 GeoJSON 또는 Vector 데이터로 배경 정보를 표시합니다. 악천후 위험 지역처럼 동적으로 필터링하지 않는 정보에 사용합니다. |
| Saved | Map Layer Editor에서 별도 리소스로 저장한 레이어를 여러 앱에서 재사용합니다. |
기본 설정
| 설정 | 동작 |
|---|---|
| Map style | Mapbox의 Light, Dark, Satellite 등의 테마를 선택합니다. Internal은 사용자 타일 소스를 사용하며 구체적인 소스 구성은 Palantir 담당자와 협의합니다. |
| Map viewport: Zoom to fit | 보이는 데이터 경계에 맞춰 자동 확대하고 필터 등으로 데이터가 바뀌면 다시 맞춥니다. Max zoom to fit level로 최대 확대 수준을 제한합니다. |
| Map viewport: Initial viewport | 처음 표시할 범위를 지정합니다. 페이지나 탭을 새로고침하기 전에는 이 설정 때문에 범위를 재설정하지 않습니다. |
| Legend | 전체 범례의 표시, 위치, 방향과 접기 허용을 정합니다. Toggle-able layers를 켜면 사용자가 개별 레이어를 보이거나 숨길 수 있습니다. |
| Object set to map | Point, Cluster, Choropleth, Line 데이터 레이어의 입력 객체 집합 변수입니다. 기존 변수를 연결하거나 새로 만듭니다. |
| Enable drawing shapes on map | Yes를 선택하면 도형 그리기 설정이 펼쳐집니다. |
| Include time stepper | Yes를 선택하면 날짜와 시각에 따라 객체를 필터링하는 설정이 펼쳐집니다. |
| Published view port filters | 현재 지도에 보이는 범위를 객체 집합 필터로 출력합니다. |
Static 레이어에는 객체 집합이 필수는 아니며 동적으로 필터링할 수 없습니다. 다만 객체를 연결하여 영역에 마우스를 올렸을 때 객체 정보를 보여 줄 수 있습니다.
Enable general location search를 켜면 왼쪽 위 검색 아이콘으로 세계의 장소와 주소를 찾고 확대하거나 마커를 놓습니다. 검색 결과 제목과 geopoint 데이터를 받을 String 변수를 초기화해야 마커가 표시됩니다.
Show user's current location은 기기의 위치 정보를 사용합니다. 현재 위치로 확대하는 버튼을 왼쪽 아래에 추가할 수 있으며 기기와 브라우저에 따라 지원 여부가 다릅니다.
Point
| 설정 | 동작 |
|---|---|
| Geopoint property | 객체 위치인 위도와 경도 쌍을 가진 geopoint 속성을 고릅니다. |
| Number of search result pages | 읽을 객체 수를 조정하며 최대 10,000개를 로드할 수 있습니다. |
| Legend header | 레이어의 용도나 데이터 계열을 설명하는 범례 제목입니다. |
| Styling | 아이콘, 색상과 크기를 고정값 또는 객체 속성에 따른 값으로 정합니다. |
| Properties to display in object preview | 마우스를 올리거나 클릭했을 때의 툴팁에서 prominent, specific 또는 none으로 표시 속성을 정합니다. |
Point connection config를 connect with line으로 설정하면 정렬할 수 있는 데이터를 선으로 연결합니다. Sort property type과 Sort order가 연결 순서를 정하고 Color, Width와 Stroke가 선의 모양을 정합니다.
Cluster
Geopoint property를 기준으로 인접 위치를 묶습니다. Aggregation은 군집별 값을 계산합니다. 예를 들어 미국 공항의 출발 항공편 수를 합산할 수 있습니다.
| 설정 | 동작 |
|---|---|
| Size configuration: Single size | Size로 모든 군집에 같은 크기를 주고 Legend label을 정합니다. |
| Size configuration: Auto-scaled by value | 집계값에 따라 크기를 바꿉니다. Scale type은 Linear, Logarithmic 또는 Square Root 등이며 치우친 데이터에는 로그나 제곱근 척도를 고려합니다. |
| Max lower bound | 자동 척도 하한이 이 값보다 높아지지 않게 합니다. 더 낮은 데이터가 있으면 그 값까지 척도를 넓힙니다. |
| Min upper bound | 자동 척도 상한이 이 값보다 낮아지지 않게 합니다. 더 높은 데이터가 있으면 그 값까지 척도를 넓힙니다. |
| Color configuration | 단일 색 또는 값에 따른 색을 정합니다. |
| Opacity configuration | 군집 전체에 같은 불투명도를 적용합니다. |
| Legend label | 범례에 표시할 데이터 계열의 설명입니다. |
| Value formatter | d3-format 문자열로 수치를 표시합니다. 백분율 형식의 배율은 아래 설명을 따릅니다. |
Choropleth
Legend header는 각 데이터 계열의 제목보다 위에 표시되는 레이어 제목입니다. 지역과 객체의 관계에 따라 구성을 선택합니다.
- Aggregated는 한 지역에 속한 객체 하나 이상을 집계하여 색칠합니다. 국가별 지출의 비용/물량 비율이 한 예입니다. Region ID property type으로 집계할 지역 ID를 고르고 Aggregated value configuration에 데이터 계열을 추가합니다.
- Non-aggregated는 객체 하나가 지역 하나를 나타내며 객체의 속성값으로 색칠합니다. 주 객체의 인구밀도가 한 예입니다. Region ID property type은 지역을 식별하고 지도에서 지역을 선택할 때 필터링할 속성이기도 합니다. Non-aggregated value configuration에 데이터 계열을 추가합니다.
두 방식 모두 객체의 Region ID 값이 선택한 경계 데이터의 ID와 정확히 일치해야 합니다. Non-aggregated는 검색 결과 한 페이지가 1,000객체이며 레이어당 최대 10페이지, 10,000객체를 읽습니다. 객체 미리보기 속성은 prominent, specific 또는 none으로 정합니다.
Mapbox 경계
국가, 주, 군 같은 일반 경계에는 Mapbox enterprise boundary set을 사용할 수 있습니다. 경계 데이터셋 설치와 객체 연결을 먼저 준비합니다.
- Mapbox enterprise boundaries version은 V3와 V4를 지원하며 최신 경계를 위해 V4를 권장합니다.
- Mapbox source config ID는 경계 종류와 수준을 선택합니다. 종류는 admin, legislative, locality, postal, stats입니다. 번호가 커질수록 작은 구역이 상위 수준 안에 포함되는 계층이 일반적입니다. 미국의 county(admin 2), state(admin 1), country(admin 0)가 한 예입니다.
- Region ID 속성은 선택한 경계 수준의 Mapbox feature ID와 일치해야 합니다. 매핑은 플랫폼에 가져온 데이터셋에서 찾으며 위치를 모르면 Palantir 담당자에게 확인합니다.
- Worldview는 서로 다른 경계 표현이 있을 때 대상 독자에 맞는 표현을 선택합니다. 이 설정의 선택지는 United States, Japan, India와 China입니다.
GeoJSON 경계
간단한 사용자 경계나 Mapbox API에 접근할 수 없는 네트워크에서 사용할 수 있습니다.
| 방식 | 입력과 조건 |
|---|---|
| Aggregated GeoJSON | 프로젝트에 올린 GeoJSON 파일 하나를 사용합니다. 도형 수나 복잡도는 비교적 낮지만 객체 수가 많고 한 지역에 여러 객체가 속하는 경우에 적합합니다. GeoJSON source RID, Region ID feature property, Region display name feature property를 지정합니다. |
| Non-aggregated GeoJSON | 객체의 Geoshape 또는 String 속성에 담긴 GeoJSON geometry를 사용합니다. 도형이 많거나 복잡하더라도 객체 수는 처리 가능한 범위여야 합니다. 객체 하나와 도형 하나가 일대일로 대응해야 합니다. |
Vector 경계
상세하거나 많은 사용자 경계는 내부 또는 외부 타일 서버의 Vector 소스로 제공할 수 있습니다. Source URL, 타일 안의 Layer name과 Region ID feature property를 지정합니다. Region display name feature property는 집계형 Vector 소스에서만 지원합니다.
Min zoom보다 축소되거나 Max zoom보다 확대되면 타일 소스를 질의하지 않으며 레이어도 표시하지 않습니다.
H3 셀
Ontology Manager에서 셀 하나가 객체 하나인 H3 Hexagon 같은 유형을 구성합니다. 예제 속성은 식별자인 hex_index와 geometry를 담는 hex_geojson입니다. 셀 ID 82f25ffffffffff의 geometry 예는 다음과 같습니다.
{"type":"Polygon","coordinates":[[[-114.88722592804382,-74.86647343694071],[-110.43933775312789,-76.04791578897344],[-103.98485051466383,-75.45226049628374],[-103.08914246618076,-73.75952697882984],[-107.50751324842204,-72.74554847287561],[-112.95182804024837,-73.26746640072781],[-114.88722592804382,-74.86647343694071]]]}
Object set to map에 이 객체 집합을 넣고 Choropleth, Non-aggregated를 선택합니다. Region ID property type은 hex_index, 경계 소스는 Geojson, GeoJSON geometry property type은 hex_geojson으로 지정합니다.
아래 함수는 예제용 H3Hexagon, CovidPositive, CovidTest 유형을 전제로 합니다. 양성 검사 객체와 전체 검사 객체는 같은 기간과 모집단을 나타내며 같은 해상도의 hex_index로 묶여야 합니다. 두 집계가 모두 있고 전체 검사 수가 양수인 셀에만 0~100 척도의 양성률을 넣습니다.
import { Function, Double, FunctionsMap } from "@foundry/functions-api";
import { ObjectSet, CovidPositive, CovidTest, H3Hexagon } from "@foundry/ontology-api";
export class H3Metrics {
@Function()
public async calculateCovidPositivityRate(
hexes: ObjectSet<H3Hexagon>,
positives: ObjectSet<CovidPositive>,
tests: ObjectSet<CovidTest>,
): Promise<FunctionsMap<H3Hexagon, Double>> {
const maxBuckets = { maxBuckets: 6000 };
const [positiveBuckets, testBuckets] = await Promise.all([
positives.groupBy(value => value.hex_index.exactValues(maxBuckets)).count(),
tests.groupBy(value => value.hex_index.exactValues(maxBuckets)).count(),
]);
const positiveByHex = new Map<string, number>();
const testsByHex = new Map<string, number>();
for (const bucket of positiveBuckets.buckets) {
positiveByHex.set(bucket.key, bucket.value);
}
for (const bucket of testBuckets.buckets) {
testsByHex.set(bucket.key, bucket.value);
}
const result = new FunctionsMap<H3Hexagon, Double>();
for (const hex of hexes.all()) {
if (hex.hex_index === undefined) continue;
const positiveCount = positiveByHex.get(hex.hex_index);
const testCount = testsByHex.get(hex.hex_index);
if (positiveCount !== undefined && testCount !== undefined && testCount > 0) {
result.set(hex, 100 * positiveCount / testCount);
}
}
return result;
}
}
Non-aggregated value configuration의 함수 기반 속성에 연결합니다. H3 해상도 2에는 육각형 5,870개와 오각형 12개를 합해 셀 5,882개가 있으므로 모두 표시하려면 Number of search result pages를 6으로 설정합니다. 위 집계의 maxBuckets: 6000은 이 해상도의 셀을 담기 위한 값이며 더 높은 해상도에 그대로 적용할 수 없습니다.
Line segment
Legend header는 데이터 계열의 제목 위에 표시됩니다.
| 방식 | 설정 |
|---|---|
| Aggregated | 같은 선에 해당하는 객체 하나 이상을 집계합니다. 항로별 평균 지연시간 같은 값입니다. Segment ID property type으로 그룹을 정하고 GeoJSON 또는 Vector 선 소스를 선택하며 Aggregated series configuration에 계산을 추가합니다. |
| Non-aggregated | 객체 하나의 속성으로 선 하나를 색칠합니다. 전력선의 가동 상태 같은 값입니다. Segment ID property type으로 선을 식별하고 선택 필터를 만듭니다. Point-to-Point, GeoJSON 또는 Vector 소스와 Non-aggregated series configuration을 지정합니다. |
Segment ID는 선 소스의 feature ID와 정확히 일치해야 합니다. Non-aggregated는 페이지당 1,000객체, 레이어당 최대 10페이지의 10,000객체이며 미리보기 속성을 prominent, specific 또는 none으로 정합니다.
선 소스
- Point to point는 객체의 시작과 끝 geopoint 사이에 직선을 그립니다. Non-aggregated에서만 사용할 수 있습니다.
- Aggregated GeoJSON은 Foundry에 올린 파일 하나로 선을 정의합니다. 선 수와 복잡도가 비교적 낮고 한 선에 많은 객체가 대응하는 경우에 적합합니다. GeoJSON source RID, Region ID feature property와 Region display name feature property를 지정합니다. 이 설정에서 Region ID는 선 feature의 ID이며 객체의 Segment ID와 대응합니다.
- Non-aggregated GeoJSON은 객체의 Geoshape 또는 String 속성에 선 geometry를 넣습니다. 객체 하나와 선 하나가 일대일이며 선이 복잡하더라도 객체 수는 처리 가능한 범위여야 합니다.
- Vector는 상세하거나 많은 선을 내부 또는 외부 타일 서버에서 제공합니다. Source URL, Layer name과 Region ID feature property를 지정합니다. Region display name feature property는 집계형에서만 지원합니다. Min zoom 미만이나 Max zoom 초과에서는 소스를 질의하지 않고 레이어를 숨깁니다.
Static
| 설정 | 동작 |
|---|---|
| GeoJSON source / Compass RID | Foundry에 올린 GeoJSON 파일을 선택합니다. |
| Vector source | 내부 또는 외부 타일 서버의 Source URL과 Layer name을 지정합니다. 타일 소스 하나에서 여러 레이어를 읽을 수 있습니다. |
| Region ID config | feature의 최상위 ID 또는 속성의 값을 고유 식별자로 사용합니다. 지정하지 않으면 hover와 선택 상호작용을 사용할 수 없습니다. |
| Region label feature attribute ID | hover tooltip에 표시할 feature 이름의 속성입니다. |
| Style | Polygon은 채움색, 선은 선 색상에 색상 설정을 적용합니다. |
| Object config | Region ID property로 객체 유형과 속성을 연결합니다. 지도 feature의 ID와 객체 속성값이 같으면 객체 기반 tooltip을 표시하고 선택을 객체 집합 필터로 출력할 수 있습니다. |
| Properties to display in object preview | 연결한 객체의 prominent, specific 또는 none 속성을 보여 줍니다. |
집계 데이터 계열
Simple aggregation은 객체 수, 합계나 평균 같은 계산입니다. Derived aggregation은 기본 숫자 수식으로 다른 계산을 결합합니다. 예를 들어 30세 미만 인구 / 전체 인구를 계산하고 백분율 형식으로 표시합니다.
Function aggregation은 위치 ID를 키로 갖는 맵을 반환합니다. Cluster는 geopoint 또는 geohash, Choropleth는 지역 ID를 사용합니다. 다음 TSv1 예제는 countryId: String, cost: Double, volume: Double인 예제용 Expense 객체를 국가별로 집계합니다. 두 집계 결과를 국가 ID로 결합하고 물량이 없거나 0인 국가는 결과에 넣지 않습니다.
import { Function, Double, FunctionsMap } from "@foundry/functions-api";
import { ObjectSet, Expense } from "@foundry/ontology-api";
export class ExpenseMetrics {
@Function()
public async costToVolume(
expenses: ObjectSet<Expense>,
): Promise<FunctionsMap<string, Double>> {
const [costs, volumes] = await Promise.all([
expenses.groupBy(value => value.countryId.topValues()).sum(value => value.cost),
expenses.groupBy(value => value.countryId.topValues()).sum(value => value.volume),
]);
const volumeByCountry = new Map<string, number>();
for (const bucket of volumes.buckets) {
volumeByCountry.set(bucket.key, bucket.value);
}
const result = new FunctionsMap<string, Double>();
for (const bucket of costs.buckets) {
const volume = volumeByCountry.get(bucket.key);
if (volume !== undefined && volume !== 0) {
result.set(bucket.key, bucket.value / volume);
}
}
return result;
}
}
topValues()로 반환된 그룹 범위에서 계산합니다. 그룹 수와 정확도 조건은 객체 집계를 따릅니다.
비집계 데이터 계열
Static property는 객체 속성값을 그대로 사용합니다. 아래는 미국 주의 면적으로 색상을 정하는 설정입니다.
Function-backed property는 FunctionsMap<객체, 값>을 반환합니다. 다음 예제 스키마의 Country는 같은 기간과 모집단에 대한 전체 검사 수 dailyNewTests와 양성 검사 수 dailyNewPositiveTests를 숫자로 보유합니다. 결과는 0~1 비율이며 값이 없거나 전체 검사 수가 양수가 아니면 해당 객체를 결과에 넣지 않습니다.
import { Function, Double, FunctionsMap } from "@foundry/functions-api";
import { ObjectSet, Country } from "@foundry/ontology-api";
export class CountryMetrics {
@Function()
public countryPositivityRate(
countries: ObjectSet<Country>,
): FunctionsMap<Country, Double> {
const result = new FunctionsMap<Country, Double>();
for (const country of countries.all()) {
const positives = country.dailyNewPositiveTests;
const tests = country.dailyNewTests;
if (positives !== undefined && tests !== undefined && tests > 0) {
result.set(country, positives / tests);
}
}
return result;
}
}
이 장의 함수 연결은 TSv1의 위치 키 맵과 객체 키 맵을 구분합니다. 새 Map의 TSv2 객체 기반 함수 스타일은 해당 Map의 계약을 따릅니다.
시계열 속성
시간별 값의 이력을 가진 속성도 변환과 요약을 거쳐 지도에 표시할 수 있습니다. Country의 COVID19 New Cases 일별 관측값을 변화율 시계열로 변환한 뒤 가장 최근 값을 요약하고 국가별 색상에 연결하는 방식입니다.
변환과 요약 범위는 Workshop 시계열 속성을 따릅니다.
색상과 표시 형식
| 방식 | 세부 설정 |
|---|---|
| Single color | Color와 Legend 설명을 지정합니다. |
| Auto-scaled by value | Color scale과 Linear, Logarithmic, Square Root 등의 Scale type을 정합니다. Max lower bound와 Min upper bound는 위 Cluster의 척도와 같은 의미이며 바깥 데이터까지 척도를 확장합니다. Legend orientation은 horizontal 또는 vertical입니다. |
| Exact value match | 정확히 일치할 값마다 색상과 Legend label을 정합니다. 일치하지 않는 값에는 Fallback color와 Fallback legend를 사용합니다. |
| Range value match | Minimum value와 Maximum value를 모두 포함하는 범위마다 색상과 Legend label을 정합니다. 범위에 들지 않으면 Fallback color와 Fallback legend를 사용합니다. |
Line border style은 선 또는 경계의 폭과 선 유형을 정합니다. Show line/border direction은 방향 화살표를 표시합니다.
Value formatter는 d3-format 문자열입니다. % 형식은 입력에 100을 곱하므로 0~1 비율에 사용합니다. 예를 들어 .0%는 0.123을 12%로 표시합니다. H3 예제처럼 이미 0~100 값으로 계산했다면 % 형식을 다시 적용하지 않습니다.
선택, 표시와 이벤트
| 설정 | 동작 |
|---|---|
| Layer Z index | 겹치는 레이어의 순서입니다. 더 높은 레이어의 툴팁과 선택 상호작용이 먼저 적용됩니다. |
| Enable single select mode | True이면 새 선택이 이전 선택을 지워 한 번에 하나만 선택합니다. |
| Initially hidden | 최초 로드 때 숨깁니다. 레이어 그룹에서는 첫 레이어의 설정을 따릅니다. |
| Layer group name | 범례 드롭다운에 묶어서 표시할 그룹 이름입니다. |
| Object set selection filter | 지도 선택을 객체 집합 필터로 출력합니다. |
| Events on select | 선택 시 드로어 열기 같은 Workshop 이벤트를 실행합니다. |
| Visibility conditions | 변수의 상태나 값으로 표시 여부를 정합니다. 조건을 구성하지 않으면 항상 표시합니다. |
그리기
Radius/circle controls를 보이게 하면 원을 그릴 수 있습니다. 왼쪽 위 원 버튼을 선택하고 지도에서 중심을 한 번 클릭한 다음 마우스를 놓고 중심에서 이동하여 반지름을 정합니다.
Polygon controls는 다각형을 만듭니다. 도구를 선택하고 지도에서 클릭할 때마다 꼭짓점을 추가하며 연속된 점 사이에 변을 그립니다. Delete controls는 삭제 도구를 선택한 뒤 그린 도형을 클릭하여 지웁니다.
세 도구 모두 Tooltip label과 Is disabled를 설정할 수 있습니다. 원과 다각형에는 다음 스타일을 지정합니다.
| 설정 | 값 |
|---|---|
| Fill color / Border color | 기본값은 연한 주황색 #F29D49입니다. |
| Fill opacity | 0~1이며 1이 최대 불투명도입니다. |
| Border opacity | 경계선의 불투명도입니다. |
| Distance unit | kilometer, meter, mile, yard, foot입니다. 원에는 반지름 단위를 적용합니다. |
Single draw mode는 새 도형을 그릴 때 이전 도형을 삭제합니다. Published filters는 도형의 경계를 객체 집합 필터로 출력합니다. Published drawn geometry는 geometry를 String 변수에 넣어 이후 속성값으로 저장할 입력에 사용할 수 있습니다. Events on draw는 그릴 때 하나 이상의 Workshop 이벤트를 실행합니다.
Time stepper
Time stepper는 사용자가 선택한 시간 구간을 객체 집합 필터로 출력합니다. 이 필터를 레이어 입력 집합에 적용하면 해당 구간의 객체만 표시하거나 집계할 수 있습니다. 각 시점의 측정 객체에 필터링 가능한 Date 또는 Timestamp 속성을 두는 모델을 권장합니다.
| 설정 | 동작 |
|---|---|
| Time stepper type | Date 또는 Timestamp를 선택합니다. |
| Default window start date / timestamp | 처음 표시할 구간 시작값입니다. |
| Minimum / Maximum window start date / timestamp | 사용자가 선택할 수 있는 시작값의 하한과 상한입니다. |
| Show warning about projections | 미래 구간일 때 표시할 정보 버튼 문구입니다. |
| Show warning about historical data | 과거 구간일 때 표시할 정보 버튼 문구입니다. |
| Info icon tooltip text | 정보 아이콘의 설명입니다. |
| Published filter | 선택 구간에 따른 객체 집합 필터를 출력합니다. |
| Small step / Large step | 각 이동 버튼이 되감거나 앞으로 이동할 양입니다. |
| Window size | 시작값부터의 구간 길이입니다. 날짜 시작값이 1월 1일이고 1 Day이면 1월 2일까지의 구간입니다. |
현재 화면 범위로 필터링
Viewport filter는 현재 보이는 경계에 해당하는 객체 집합 필터를 출력합니다. 공항 지도에서 미국으로 확대하면 그 경계 안의 공항을 거르는 필터를 다른 집합에 연결할 수 있습니다. Choropleth에 이 필터를 쓰려면 객체 유형에 geopoint 속성이 필요하며 지역의 중심점을 사용할 수 있습니다.