К основному содержанию
скилл CX Codex

cartography-geoviz — скилл для Claude Code: карты и геовизуализация

Скилл для создания тематических карт — хороплетов, пропорциональных символов, бивариантных схем и интерактивных слоёв. Учит агента выбирать классификацию, палитру, проекцию и нормализацию так, чтобы карта честно показывала данные.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add muend/geoai-skills --skill cartography-geoviz -a claude-code
Открыть на GitHub

Что делает cartography-geoviz

Срабатывает при любом запросе создать, сравнить или проверить карту для читателя. Различает типы карт по данным: хороплет для нормированных показателей, пропорциональные символы для абсолютных величин, бивариантная схема для связанных переменных, тепловая карта или точечная плотность для индивидуальных событий. Проверяет нормализацию: необработанные счётчики по полигонам превращаются в карты населения, агент предложит ставки или плотность.

Внутри — таблицы выбора проекции, классификации (равные интервалы, квантили, Jenks, вручную) и палитр ColorBrewer с проверкой на дальтонизм. Для серий карт фиксирует границы классов, чтобы панели оставались сопоставимыми. Без GeoPandas или QGIS скилл не заработает: он управляет аргументами plot(), scheme=, cmap= и рендерингом легенды. Для интерактивных карт настраивает Folium или deck.gl и требует тайлить слои свыше 50 тысяч объектов.

Протокол из пяти шагов: проверка читаемости в миниатюре, прогон через симулятор дальтонизма, аудит легенды (единицы, округление, непересекающиеся границы классов), сверка трёх объектов с таблицей атрибутов и проверка одинаковых границ классов для серий. Без знаменателя, CRS или единиц измерения агент квалифицирует результат как незавершённый.

Какие задачи решает

  • выбрать тип карты и классификацию по семантике данных
  • нормировать счётчики в плотность или ставку для хороплета
  • зафиксировать границы классов в серии карт для сравнения
  • отрендерить интерактивную карту с легендой и всплывающими подсказками
  • проверить палитру на дальтонизм и NoData на отдельный цвет

Примеры запросов агенту

  • Построй хороплет заболеваемости по округам с квантильной классификацией и палитрой YlGnBu
  • Сравни две даты на картах с одинаковыми границами классов — используй scheme='userdefined'
  • Сделай интерактивную карту Folium с легендой, всплывающими подсказками и форматированными числами

Как установить cartography-geoviz

1Через Skills CLI (Vercel)

npx skills add muend/geoai-skills --skill cartography-geoviz -a claude-code

2Вручную: положить файлы

~/.claude/skills/cartography-geoviz/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/cartography-geoviz/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о cartography-geoviz

Как установить cartography-geoviz в Claude Code?

Запусти npx skills add muend/geoai-skills --skill cartography-geoviz -a claude-code, скилл окажется в ~/.claude/skills/cartography-geoviz/SKILL.md.

Что делает cartography-geoviz?

Управляет созданием тематических карт: подбирает тип (хороплет, пропорциональные символы, бивариантная схема), классификацию, палитру и проекцию; проверяет нормализацию, легенду и доступность для дальтоников; фиксирует границы классов в сериях карт.

Какие библиотеки нужны для работы cartography-geoviz?

GeoPandas для статических карт (вызовы plot(), классификация, экспорт в PNG/PDF), Folium или MapLibre для интерактивных слоёв, deck.gl или Kepler.gl для больших точечных массивов. QGIS упоминается как альтернатива для вёрстки.

Исходный текст

SKILL.md · MIT
---
name: cartography-geoviz
description: >-
  Always invoke before answering any request to create, compare, design, or
  review a user-facing map, even if the request is terse or underspecified.
  Covers publication maps, choropleths, map series and small multiples,
  comparable multi-date panels, proportional/bivariate/flow maps, raster
  rendering, and interactive web maps. Includes classification, color,
  legends, projections, accessibility, and large-data aggregation. Do not
  trigger for a temporary diagnostic plot inside another analysis.
license: MIT
metadata:
  author: Muhammed Enes Duran
---

# Cartography & Geovisualization

Purpose: maps that communicate honestly. Cartographic choices (class
breaks, ramps, normalization, projection) can manufacture or hide
patterns; this skill treats them as analytical decisions with stated
rationale, not styling.

## The first three questions

1. **What's the message?** One map = one message. If two variables
   compete, consider small multiples or a bivariate scheme — not twelve
   legend classes.
2. **Normalized?** Choropleths of raw counts are population maps in
   disguise. Rates, densities, or per-capita for area-based color; raw
   magnitudes → proportional symbols instead.
3. **Static or interactive?** Print/PDF/paper → matplotlib/QGIS layout;
   exploration/stakeholders → Folium/MapLibre; big point data →
   Kepler.gl/deck.gl (GPU).

## Thematic map type selection

| Data | Map type |
|---|---|
| Rate/ratio by polygon | Choropleth |
| Count/magnitude by place | Proportional/graduated symbols |
| Two related rates | Bivariate choropleth (3×3 max) |
| Individual-level density | Dot density or KDE surface (label bandwidth) |
| Continuous field (raster) | Classified or stretched render + hillshade context |
| Movement/OD | Flow map (width∝volume), aggregate to avoid hairballs |
| Change over time | Small multiples > animation for analysis; animation for outreach |

## Classification — the honesty lever

- **Natural breaks (Jenks)**: default for skewed data; breaks are
  data-specific, so NOT comparable across maps/dates.
- **Quantiles**: guaranteed color balance; can split near-identical values.
- **Equal interval**: comparable and intuitive; fails on skew.
- **Manual/defined**: the ONLY correct choice for map series (same breaks
  across all dates/regions) and for domain thresholds (WHO limits, slope
  classes).
- 5±2 classes; show the histogram with breaks in the workflow; state the
  scheme in the caption/metadata. Try two schemes — if the story changes
  materially, the story is the classification, and the reader must be told.

## Color

- Ramps from ColorBrewer/`cmcrameri`/viridis family: sequential (ordered),
  diverging (meaningful midpoint — zero, mean, threshold), qualitative
  (categories, ≤ 8).
- Colorblind-safe by default (~8% of male readers); never red-green
  diverging without checking a CVD simulator.
- NoData ≠ zero: render as neutral gray with its own legend entry, never
  the ramp's low end.
- Muted basemaps (CartoDB Positron) under thematic layers — the basemap
  must never win.

## Projection for display

- Web tiles = Web Mercator: fine for city scale; area comparisons at
  continental scale on Mercator are visual lies — use equal-area
  projections (Albers, Mollweide, Equal Earth) for static thematic maps of
  large extents.
- National mapping → the national grid; polar work → polar stereographic.
- Label the projection on publication maps.

## Required furniture (publication static maps)

Title (the message, not the filename), legend (units!, sensible number
formatting), scale bar (projected CRS only — degrees have no fixed scale),
north arrow (only when north isn't up or the audience expects it), data
source + date + projection + author, and an inset locator map for
unfamiliar regions.

```python
# GeoPandas static map core
ax = gdf.plot(column="rate_per_1k", scheme="naturalbreaks", k=5,
              cmap="YlGnBu", legend=True, edgecolor="white", linewidth=0.3,
              missing_kwds={"color": "#d9d9d9", "label": "No data"})
ax.set_axis_off()
```

Export: 300 dpi PNG/PDF for print; SVG when editors will touch it; COG +
style for GIS handoff.

## Interactive maps

- Folium/MapLibre: tooltips with formatted values, layer control, sensible
  initial bounds (`fit_bounds`), legend included (Folium needs a manual
  HTML/branca legend — don't ship without one).
- Performance: >~50k vector features → tile it (tippecanoe → PMTiles) or
  switch to deck.gl/Kepler; never dump 500k GeoJSON features into Leaflet.
- Every popup number formatted (thousands separators, units, rounding
  matched to precision honesty).

## Verification protocol

1. Squint test: does the message survive at thumbnail size?
2. CVD simulation pass.
3. Legend audit: units, rounding, class edges non-overlapping.
4. Cross-check 3 features' rendered values against the attribute table
   (classification bugs are silent).
5. For map series: identical breaks, ramp, and extent across panels.

## Pitfalls checklist

- Raw-count choropleth (population in disguise).
- Jenks breaks compared across two dates.
- Red-green diverging ramp, unlabeled midpoint.
- NoData painted as the lowest class.
- Scale bar on an unprojected (degree) map.
- Continental-area comparisons on Web Mercator.
- Interactive map with no legend or units.

## Execution contract

- **Workflow:** inspect audience, data semantics, scale, and output medium; select projection, normalization, classification, and visual hierarchy; render; verify; export.
- **Decision rules:** choose map type from the analytical question, normalize counts when exposure differs, and keep breaks fixed for comparisons.
- **Verification protocol:** run the five checks above and reconcile rendered values, units, class edges, and missing-data treatment against the source.
- **Failure modes:** stop or qualify delivery when denominators, CRS, units, accessibility, or cross-panel comparability are unresolved.
- **Deliverables:** final map, legend and units, data/source note, projection and classification rationale, accessibility note, and reproducible style or code.
- **Source freshness:** consult [the authoritative source registry](references/authoritative-sources.md) before using version-sensitive APIs and record the checked date.

© Muhammed Enes Duran · MIT · muend/geoai-skills

Похожие скиллы

Все скиллы по теме «Данные и базы» →
xlsx официальный anthropics Работает с табличными файлами: создаёт, читает, правит и преобразует книги. Подходит, когда итогом должен стать файл Excel или другой табличный формат. 187 223установок google-agents-cli-observability официальный Google Помогает настроить трассировку и сбор данных о работе ИИ-агентов, включая агентов на ADK. Пригодится, когда нужно разбирать выполнение запросов или наблюдать за агентом после развёртывания. CX Codex +1 511 300установок caveman-evidence-review JuliusBrussee Скилл читает данные Caveman Cloud о расходах LLM, трассах и маршрутизации. Подходит для проверки того, куда уходит бюджет проекта. CX Codex +1 104 500установок migration JuliusBrussee Скилл задаёт правила безопасных миграций схем, данных и API с обязательным откатом. Пригодится при изменениях, где нельзя терять данные или ломать совместимость. CX Codex +1 103 900установок performance-optimization addyosmani Скилл для агентов ИИ-кодинга: сначала замеряет, потом чинит узкое место — от Core Web Vitals до N+1 запросов и индексов в базе. CX Codex +1 65 200установок supabase официальный supabase Скилл помогает настраивать базу данных, аутентификацию и RLS в Supabase без скрытых дыр в безопасности. CX Codex GP ChatGPT 8установок

Из того же набора11

postgis-spatial-sql Скилл помогает выбирать движок для пространственных SQL-запросов и разбирать схемы, индексы и планы выполнения. Пригодится для PostGIS, DuckDB Spatial и пространственных соединений. CX Codex +1 ★ 35звёзд репо point-cloud-lidar Скилл для работы с LAS, LAZ и COPC: классификация земли, DTM/DSM/CHM, метрики леса и зданий, вертикальные датумы. Нужен, когда на входе сырое облако точек. CX Codex +1 ★ 35звёзд репо movement-trajectory Скилл помогает очищать GPS/GNSS-треки, находить остановки и поездки, сопоставлять точки с дорогами и агрегировать потоки. Пригодится для анализа перемещений по координатам с временными метками. CX Codex +1 ★ 35звёзд репо ml-experiment-standards Заставляет агента проверять утечки, выбирать сплиты и метрики до обучения модели. Пригодится, когда результат нужно воспроизвести, а не просто получить цифру. CX Codex +1 ★ 35звёзд репо geostatistics-interpolation Скилл для пространственной интерполяции: строит поверхность по редким замерам и отдельно считает карту неопределённости. Полезен, когда нужно оценить значения между станциями, скважинами или зондированиями. CX Codex +1 ★ 35звёзд репо geo-deep-learning Помогает выбирать и проверять нейросетевые методы для спутниковых и других геопространственных снимков. Пригодится для сегментации, детекции объектов и оценки качества карт. CX Codex +1 ★ 35звёзд репо geo-data-engineering Помогает агенту собрать геоданные из OSM, STAC или Overture, привести их в рабочий вид и не потерять строки по дороге. CX Codex +1 ★ 35звёзд репо arcgis-pro-automation Скилл для управления локальными проектами ArcGIS Pro и ArcPy через arcgis-mcp-bridge: геообработка, проекции, растры, сети, экспорт компоновок. CX Codex +1 ★ 35звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой