artemyx logo artemyx
About App Examples GitHub
Core Operations
  • Buffer / Dissolve Vancouver bike walksheds - 200m buffer around bikeways with dissolve.
  • Intersection / Clip San Francisco bike routes intersected with parks - filter and clip modes compared.
  • Union / Merge Portland neighbourhoods merged with development opportunity areas - merge and dissolve modes compared.
  • Difference Ottawa neighbourhoods minus parks and greenspaces - subtract and exclude modes compared.
  • Contains / Within Winnipeg cycling network checked against parks - filter and within modes compared.
  • Distance (Filter) Chicago parks within walking distance of L rail stations.
  • Distance (Annotate) Calgary bikeways colored by distance to nearest LRT station.
  • Centroid Denver park polygons reduced to centroid points.
Labels
  • Labels Calgary communities and LRT stations with text labels - style.labelField for simple labels, type: symbol for full MapLibre expression control.
Expression Styling
  • Interpolate Styling Vancouver parks colored by size - interpolate expression mapping hectares to a green color ramp.
  • Match Styling Victoria road network colored by classification - match expression mapping road classes to a color palette.
Advanced Workflows
  • Multi-Dataset Layers Surrey, Burnaby, and New Westminster parks and active transportation - seven datasets across three municipalities with expression styling.
  • Multi-Step Workflow Edmonton schools + transit - union, buffer, and intersection chained to find dual-access zones.
  • Attribute Filter Vancouver cycling network filtered by infrastructure quality - safer routes via advanced SQL filter, protected lanes via structured filter, walkshed coverage buffered from the result.
deck.gl
  • deck.gl Meteorite Landings NASA meteorite landings rendered with deck.gl GeoJsonLayer - 45,000+ recorded impacts visualized from GeoParquet.
PMTiles
  • PMTiles Vector Tiles Protomaps worldwide vector basemap loaded as a PMTiles dataset - nine source layers styled independently with explicit layer configs.
About App GitHub
# Artemyx Example - Interpolate Expression Styling
# Vancouver parks colored by size (hectares) using a MapLibre interpolate expression.
# Small pocket parks appear pale green; large parks like Stanley Park appear deep green.
# No operations - pure expression-driven styling on a single dataset.

map:
  center: [-123.1207, 49.2827]  # Vancouver, BC
  zoom: 12
  basemap: carto-dark

datasets:
  - id: parks
    url: "https://opendata.vancouver.ca/api/explore/v2.1/catalog/datasets/parks-polygon-representation/exports/geojson?lang=en&timezone=America%2FLos_Angeles"
    name: Vancouver Parks
    color: "#4ade80"

layers:
  # Park fills - interpolate color by hectare size
  - id: parks-fill
    source: parks
    tooltip: ["park_name", "area_ha"]
    type: fill
    paint:
      fill-color:
        - interpolate
        - ["linear"]
        - ["get", "area_ha"]
        - 0
        - "#d9f99d"   # pale lime - tiny pocket parks
        - 2
        - "#86efac"   # light green - small neighbourhood parks
        - 10
        - "#4ade80"   # medium green - mid-size parks
        - 40
        - "#16a34a"   # deep green - large parks
        - 100
        - "#14532d"   # near-black green - Stanley Park scale
      fill-opacity: 0.75

  # Park outlines - fixed color
  - id: parks-outline
    source: parks
    type: line
    paint:
      line-color: "#166534"
      line-width: 1
      line-opacity: 0.5