Aide:Extension:''Kartographer''
![]() |
Note : si vous modifiez cette page, vous acceptez de placer votre contribution sous licence CC0. Plus d’informations sont disponibles sur le projet Aide dans le domaine public. | ![]() |
Pages d'aide principales :
- Comment créer des cartes avec Kartographer dans l'éditeur visuel
- Introduction à Kartographer en wikitext
- Kartographer - page d'aide détaillée
L'extension Kartographer permet de créer des cartes interactives et statiques sur les pages wiki des projets Wikimedia.
Cette page est un manuel d'utilisation exhaustif de Kartographer, incluant les nombreuses options disponibles lors de l'utilisation des balises <mapframe>
. Il embarque des cartes directement dans les pages wiki, <maplink>
, et crée des liens vers des cartes interactives pleine page. Il traite des éléments GeoJSON pris en charge par Kartographer.
Vous trouverez de nombreux exemples en bas de page.
Si vous avez besoin d'aide sur Kartographer et OpenStreetMap, consultez Help:Extension:Kartographer/OSM .
Comment utiliser Kartographer
Trouver des pages utilisant Kartographer
Pour trouver des pages contenant des cartes Kartographer, rechercher insource:mapframe
.
Consulter les articles à proximité
En mode plein écran, vous pouvez cliquer sur le bouton « Afficher les articles à proximité » pour voir jusqu’à 300 articles géographiquement proches sous forme de marqueurs sur une carte. Plusieurs marqueurs situés au même endroit sont regroupés en clusters lorsque la lisibilité du zoom ne permet pas de les différencier. Ils se dissocent lors d'un zoom avant.
Lorsque vous déplacez la carte ou que vous effectuez un zoom avant ou arrière, un bouton « recharger les résultats » apparaît pour afficher plus d'articles à proximité.
Les articles à proximité sont générés à partir du wiki que vous consultez, en tenant compte de la pertinence et de la proximité. Les marqueurs pour les articles à proximité sont ronds. Ils sont affichés en plus de tous les marqueurs ajoutés manuellement, lesquels sont représentés avec une forme différente.
Lorsque l'on clique sur le marqueur d'un article à proximité, une fenêtre contextuelle affiche le titre, une brève description et une image de l'article. Cliquez sur le titre pour accéder à l'article. Si l'article est lié à une entrée sur Wikidata, la fenêtre contextuelle affiche la brève description issue de Wikidata. Pour masquer les articles à proximité sur la carte, cliquez à nouveau sur le bouton « Afficher les articles à proximité ».
Comment créer des cartes avec Kartographer
Syntaxe de base de la carte
Pour placer une carte ou un lien de carte directement sur une page wiki, Kartographer propose deux balises : <mapframe>
, qui intègre une carte en ligne qui renvoie vers une carte interactive plein écran, et <maplink>
, qui crée un texte enrichi (avec un marqueur facultatif) qui renvoie vers une carte interactive plein écran.
Certains wikis encapsulent ces balises dans des modèles, tels que Mapbox et Mapframe. Consultez la page d'aide Kartographer de votre wiki local pour voir si votre wiki dispose de modèles - ou utilisez les balises directement avec ce document comme guide.
<mapframe>
La balise <mapframe>
intègre une carte dans une page wiki.
La balise doit être vide ou contenir du GeoJSON.
Voir ci-dessous pour plus de ressources sur l'écriture avec du GeoJSON.
<mapframe text="San Francisco museums" width="350" height="350" zoom="13" longitude="-122.3988" latitude="37.8013" />
<maplink>
La balise <maplink>
entraine la création d'un lien vers une carte en plein écran :
<maplink zoom="13" latitude="46.204391" longitude="6.143158"/>
Ses attributs et son utilisation sont sensiblement identiques à <mapframe>
; voir ci-dessous pour ses différences mineures.
Attributs
Vous trouverez ci-dessous une liste d'attributs pour <mapframe>
et <maplink>
.
Strictement parlant, les seuls attributs obligatoires (marqués dans le tableau par un *) sont largeur et hauteur. Sans emplacement spécifié, Kartographer produira une carte du monde avec un zoom arrière de la taille spécifiée sur la page.
Lorsque zoom n'est pas spécifié, Kartographer applique un niveau de zoom automatique basé sur la position de tous les marqueurs ou formes géographiques de la carte.
Utilisation dans chaque balise :
attribute="value"
Attributs | Valeur | Description | Exemples |
---|---|---|---|
width* | pixels, "full" | La largeur du cadre de la carte. "100%" also works as an alias for "full", but no other percentage. | width=200 , width="full"
|
height* | pixels | La hauteur du cadre de la carte. | height=300
|
zoom | 0-19 | Le niveau de détail de la carte. Le niveau de zoom 0 affiche l'intégralité de la carte disponible et le niveau de zoom 19 affiche le niveau de détail le plus élevé. Lorsque zoom n'est pas spécifié, Kartographer applique un niveau de zoom automatique basé sur la position des marqueurs ou des formes géographiques présents. | zoom=12
|
latitude, longitude | degrés décimaux | La position sur la terre. Voir cet article pour des informations détaillées. Si ce n'est pas spécifié, Kartographer tentera de déduire le point central du contenu d'un article. | latitude=46.204391 longitude=6.143158
|
align | "left", "center", "right" | La position horizontale du cadre de la carte sur la page. La valeur par défaut de cette valeur est définie par la directionnalité de la langue de la page (RTL : « gauche » ; LTR : « droite »). Avec une valeur de « gauche » ou « droite », le reste du contenu du wiki s'affichera sur la carte (voir la section correspondante de Aide:Images ). | align="right"
|
mapstyle | "osm", "osm-intl" | Le style du fond de carte. Sur Wikimedia, deux styles sont disponibles. Un avec des étiquettes (osm-intl) et un sans étiquettes (osm). | mapstyle="osm"
|
lang | code de langue, "local" | La langue à utiliser pour les étiquettes et les marqueurs de la carte. « local » utilise la langue de la zone affichée sur la carte. Remarque : toutes les étiquettes ne sont pas disponibles dans toutes les langues. Voir également ##Langues_et_options_options_de_remplacement. | lang="es"
|
alt | texte alternatif | Définit le texte alternatif pour l'image générée par les cartes. Fonctionne uniquement pour les wikis avec wgKartographerStaticMapframe activé.
|
alt="Plan de Manhattan. L'Empire State Building est situé au milieu de l'île, juste au sud de Central Park."
|
text | wikitext |
|
text="Map of New York marking the location of the Empire State Building"
|
frameless | ignored |
|
frameless
|
class | "no-icon" |
|
class="no-icon"
|
* = required
Tags à fermeture automatique
Lorsque vous n'utilisez pas un GeoJSON, vous pouvez utiliser <mapframe>
et <maplink>
comme balises à fermeture automatique autonomes.
Fermeture automatique
<mapframe width="350" height="350" zoom="13" longitude="-122.3988" latitude="37.8013" />
Empaquetage du GeoJSON :
<mapframe width="350" height="350" zoom="13" longitude="-122.3988" latitude="37.8013">
{
"type": "Feature",
"geometry": { "type": "Point", "coordinates": [-122.3988, 37.8013] },
}
</mapframe>
GeoJSON
Les balises <mapframe>
et <maplink>
peuvent être vides ou contenir un GeoJSON valide, pour annoter la carte avec des marqueurs, dessiner des formes et appliquer une zone de masque.
Pour plus de détails sur ce vaste sujet, vous pouvez lire cette introduction à GeoJSON ainsi que la documentation complète de GeoJSON.
maplink
. Comme mentionné précédemment, le GeoJSON utilisé pour maplink
peut être utilisé pour mapframe
sans aucun changement.
Marqueurs
Les cartes qui utilisent un GeoJSON peuvent contenir un ou plusieurs marqueurs pour indiquer des emplacements spéciaux. Ces marqueurs sont définis à l'aide de mots-clés spécifiques aux marqueurs sous le niveau « propriétés » de GeoJSON.
Kartographer prend en charge les spécifications simplestyle avec les icônes Maki qui sont disponibles au moins en CC0 license. Voir la liste complète des icônes prises en charge.
<maplink text="Colorado State Capitol with marker icon" longitude="-104.98491" latitude="39.73939" zoom="17">
{
"type": "Feature", "properties":
{
"marker-symbol": "town-hall",
"marker-color": "46ea5f",
"marker-size": "medium"
},
"geometry":
{
"type": "Point",
"coordinates": [-104.98485267162323, 39.73928364167763]
}
}
</maplink>
Résultat : Colorado State Capitol with marker icon
Compteurs automatiques
Plusieurs marqueurs sur une carte peuvent être regroupés et nommés à l'aide de modèles et de compteurs. Synthèse des attributs de style des éléments placés sur une carte à l'aide de GeoJSON. Pour plus d'informations, consultez la spécification simplestyle.
Attributs | Valeur | Description | Exemple |
---|---|---|---|
marker-symbol | nom de l'icône, "‑number", "‑letter" | Détermine si les étiquettes des marqueurs incrémentiels procèdent par numéro (1, 2, 3...) ou par lettre (A, B, C...).
Les séries automatiques de “-number” vont de 1 à 99 et les lettres de A à Z. Si un nom de groupe est inclus comme “-number-eat”, plusieurs séries sont générées. |
"marker-symbol": "museum"
|
marker-color | hexadecimal color | Une valeur de couleur hexadécimale à trois ou six caractères pour chaque marqueur. | "marker-color": "#228b22"
|
marker-size | small, medium, large | Voir des exemples de chaque taille. | "marker-size": "medium"
|
title | wikitext | Lorsqu'un marqueur est sélectionné, il affiche le wikitext spécifié dans la valeur "title". | "title": "[[:en:Downtown_Aquarium,_Denver|Downtown Aquarium Denver]] "
|
description | wikitext | Lorsqu'un marqueur est sélectionné, il affiche un wikitexte ou une image spécifiée dans le wikitexte dans la valeur "description". | "description": "[[File:Denver-DTA.jpg|150x150px]]"
|
Pour une plus grande variété d’exemples, consultez la section Exemples.
Formes, lignes et points
Un GeoJSON permet d'ajouter des lignes, des formes géographiques et des points à la carte. On peut ajouter des données disponibles en ligne ou les importer depuis des bases de données externes.
Données en ligne
Un GeoJSON permet d'ajouter des points (des marqueurs), des lignes simples et des polygones dans la carte. Les exemples suivants incluent l'attribut "geometry" des objets GeoJSON à l'intérieur d'un Objet rfc7946#section-3.2 Fonctionnalité
. Consultez les spécifications GeoJSON complètes pour davantage d'informations.
Objet | Coordonnées (longitude/latitude) | Fonctionnalité de la carte |
---|---|---|
MultiPoint
|
positions multiples | plusieurs points (marqueurs) |
MultiLineString
|
plusieurs ensembles de positions LineString
|
plusieurs lignes |
MultiPolygon
|
plusieurs ensembles de positions Polygone
|
plusieurs polygones |
Données externes
Un GeoJSON permet d'importer des objets géographiques issus de sources externes en utilisant l'attribut "type" avec la valeur "ExternalData".
Les cartes peuvent s'appuyer sur des objets géographiques en utilisant l'identifiant Wikidata (également via des requêtes Wikidata SPARQL). Les polygones et les lignes externes sont issus de la base de données OpenStreetMap et les coordonnées des marqueurs sont récupérées directement à partir de Wikidata.
De plus, les cartes peuvent être directement liées au GeoJSON brut stocké sur Wikimedia Commons (fichiers .map) : voir Aide:Données cartographiques pour plus de détails.
Les objets peuvent être affichés à l'aide de données provenant de sources externes :
"service": "geopoint"
- Dessiner un marqueur."service": "geoline"
- Dessiner une ligne simple."service": "geoshape"
- Dessine un polygone avec une ombre interne."service": "geomask"
- Dessine un polygone et grise tout ce qui se trouve en dehors du polygone."service": "page"
- Chemin d'accès à un fichier .map sur Wikimedia Commons contenant du GeoJSON valide.
Via les identifiants Wikidata
Attributs | Valeur |
---|---|
type | ExternalData |
service | geopoint, geoline, geoshape, or geomask |
ids | One or more Wikidata IDs, separated by commas |
Les polygones et les lignes de la base de données OpenStreetMap (OSM) sont liés à l'aide des identifiants Wikidata.
Les identifiants Wikidata sont relativement nouveaux pour la communauté OSM.
Il y a environ 2,6 million d'entités avec des identifiants renseignés.
On peut ajouter des données géographiques sur https://www.openstreetmap.org/ – tout en s'assurant de renseigner la déclaration wikidata
et le tag avec la valeur correspondant au QID
.
Le polygone ou la ligne devient généralement disponible pour Kartographer dans les deux jours.
Pour des instructions détaillées, voir Help:Extension:Kartographer/OSM .
Le marqueur est dessiné si l'élément Wikidata qui y est lié possède une indication des coordonnées, la déclaration Wikidata P625.
<mapframe height="300" width="300" text="Combined map of Salzburg and Elixhausen">
{
"type": "ExternalData",
"service": "geoshape",
"ids": "Q34713,Q701153"
}
</mapframe>
<mapframe text="Geopoints using QIDs [[wikidata:Q667450|Q667450]] and [[wikidata:Q15958518|Q15958518]]" latitude="43.74" longitude="7.43" zoom="13" width="400" height="400">
{
"type": "ExternalData",
"service": "geopoint",
"ids": "Q667450, Q15958518"
}
</mapframe>
Via Wikidata Query
Attributs | Valeur |
---|---|
type | ExternalData |
service | geopoint, geoline, geoshape, or geomask |
query | a Wikidata SPARQL query |
Variable | Autorisé pour | Commentaire |
---|---|---|
?id
|
geopoint, geoline, geoshape, or geomask | Required |
?title
|
geopoint, geoline, geoshape, or geomask | Gives a heading on a popup. Accepts wikitext. |
?description
|
geopoint, geoline, geoshape, or geomask | Further text on a popup. Accepts wikitext. |
?geo
|
geopoint | Should be coordinates. |
Marker variables behaves like described in auto-counters. | ||
?marker_symbol
|
geopoint | |
?marker_size
|
geopoint | |
?marker_color
|
geopoint | |
Fill and stroke variables behaves like described in styling shapes. | ||
?fill
|
geoshape, or geomask | |
?fill_opacity
|
geoshape, or geomask | |
?stroke
|
geoline, geoshape, or geomask | |
?stroke_opacity
|
geoline, geoshape, or geomask | |
?stroke_width
|
geoline, geoshape, or geomask |
<mapframe longitude="-110" latitude="52" zoom="3" width="400" height="300" text="Governors of US states with their party affiliation">
{
"type": "ExternalData",
"service": "geoshape",
"query": "SELECT ?id ?head (SAMPLE(?img) as ?img_) (min(?partyId) as ?party) (if(?party = '0', '#800000', if(?party = '1', '#000080', '#008000')) as ?fill) (concat('[[w:', substr(str(?link),31,400), '{{!}}', ?headLabel, ']]') as ?title) (concat(?stateLabel, '\\n', '[[File:', substr(str(?img_), 52, 400), '{{!}}200px]]') as ?description) WHERE { ?id wdt:P31 wd:Q35657 . ?id wdt:P6 ?head . ?head wdt:P102 ?party . BIND(if(?party = wd:Q29468, '0', if(?party = wd:Q29552, '1', '2')) as ?partyId) SERVICE wikibase:label { bd:serviceParam wikibase:language 'en' . ?head rdfs:label ?headLabel . ?id rdfs:label ?stateLabel . } OPTIONAL { ?head wdt:P18 ?img . } ?link schema:about ?head . ?link schema:isPartOf <https://en.wikipedia.org/> .} GROUP BY ?id ?head ?headLabel ?link ?stateLabel"
}
</mapframe>
Au lieu d'un identifiant d'un élément Wikidata, une carte peut également dériver de données d'une requête Wikidata dans SPARQL. (Vous pouvez créer des requêtes SPARQL à l'aide du Query Builder.)
<mapframe text="Public art in Hoogvliet, Rotterdam" latitude="51.86" longitude="4.36" zoom="13" width="400" height="400">
{
"type": "ExternalData",
"service": "geopoint",
"query": "SELECT DISTINCT ?id ?geo (?idLabel as ?title) (if(BOUND(?image), concat(?typeLabel, '\\n', '[[File:', substr(str(?image), 52, 400), '{{!}}200px]]'), ?typeLabel) as ?description) (if(?type = wd:Q860861, '#800000', if(?type = wd:Q245117, '#000080', '#008000')) as ?marker_color) WHERE { ?id wdt:P136 wd:Q557141; wdt:P625 ?geo; wdt:P276* wd:Q2103147; wdt:P31 ?type. OPTIONAL {?id wdt:P18 ?image}. SERVICE wikibase:label { bd:serviceParam wikibase:language 'en, nl'. ?id rdfs:label ?idLabel. ?type rdfs:label ?typeLabel} .} ORDER BY ?id"
}
</mapframe>
<mapframe width="400" height="300" text="Euskal Herriko kastroen mapa interaktiboa">
{
"type": "ExternalData",
"service": "geopoint",
"marker-size": "small",
"query": "SELECT ?id ?geo ?idLabel ?img ?herriaLabel (?idLabel as ?title) (concat(?herriaLabel, '\\n', '[[File:', substr(str(?img), 52, 400), '{{!}}200px]]') as ?description) ('small' as ?marker_size) ('#228b22' as ?marker_color) ('landmark-JP' as ?marker_symbol) WHERE {\n SERVICE wikibase:label { bd:serviceParam wikibase:language \"eu,es,fr,en\". }\n ?id wdt:P31 wd:Q744099.\n ?id wdt:P131*/^wdt:P527 wd:Q47588;\n wdt:P625 ?geo.\n OPTIONAL { ?id wdt:P18 ?img .}\n ?id wdt:P131 ?herria.\n}"
}
</mapframe>
Données cartographiques de Commons
Les données cartographiques des GeoJSON stockées sur Commons peuvent être dessinées sur la carte.
Attributs | Valeur |
---|---|
type | ExternalData |
service | page |
title | Chemin d'accès à un fichier .map sur Wikimedia Commons contenant du GeoJSON valide.
Par exemple : Neighbourhoods/New_York_City.map sera dessiné à partir de cette carte. |
- Plus d'information : Aide:Données cartographiques
<mapframe width="300" height="400">
{
"type": "ExternalData",
"service": "page",
"title": "Neighbourhoods/New York City.map"
}
</mapframe>
Attention : | The map loader does not currently support chained ExternalData calls. If a resource of type ExternalData is fetched that itself relies on ExternalData references, loading will fail. See tâche T155927 and tâche T193458. |
Attention : | Les noms de fichiers .map sont limités à 400 caractères et à une taille de fichier de 2 Mo. Ce point est à garder en tête lors de la création des fichiers dans Wikimedia Commons. |
Couche de masque
Un masque est une forme inversé, spécifiée de la même manière, mais l'extérieur de la forme est grisé.
<mapframe align="right" height="420" width="420" latitude="47.7992" longitude="13.0482" zoom="11" text="Map of Salzburg with mask">
{
"type": "ExternalData",
"service": "geomask",
"ids": "Q34713",
"properties": {
"fill": "#555555",
"fill-opacity": 0.5,
"stroke": "#000000",
"stroke-width": 1,
"stroke-opacity": 1
}
}
</mapframe>
Combinaison de plusieurs types de données
On peut combiner des objets issus de données externes, des Feature et des FeatureCollection dans le même élément <mapframe>
ou <maplink>
, par exemple pour mettre en évidence des entités avec des titres et des descriptions au-dessus des objets provenant de sources externes.
Les données cartographiques de Commons peuvent être combinées avec d'autres types de données en les regroupant dans des blocs parallèles du GeoJSON. Voir #Types mixtes pour différentes combinaisons.
Stylisation des couches de données
En plus du style de marqueur ci-dessus, les lignes et les polygones prennent en charge ces propriétés de style simple :
Attributs | Valeur | Description |
---|---|---|
stroke | hexadecimal color | La couleur de la ligne ou du contour. |
stroke-width | pixels | Épaisseur de la ligne. |
stroke-opacity | 0.0-1.0 | Définit la transparence de la ligne. Un paramètre de 1 dessine une ligne continue ; 0 une ligne invisible ; des valeurs approchant 1 montrent moins l'arrière-plan à travers la ligne. |
fill | hexadecimal color | La couleur utilisée pour remplir la forme. |
fill-opacity | 0.0-1.0 | Définit la transparence de l'intérieur de la zone. L'intérieur est complétement rempli avec un paramètre de 1 ; 0 la forme est invisible ; des valeurs plus s'approchant de 1 montrent moins l'arrière-plan à travers la zone de remplissage. |
Éléments qui se chevauchent
Les éléments cartographiques qui se chevauchent sont dessinés dans l'ordre dans lequel ils apparaissent dans le code. Si une carte comprend deux lignes qui se chevauchent, la ligne définie en premier apparaît sous la ligne définie ensuite. Ceci s'applique à tous les éléments définis dans le code qui dessine la carte.
Exemples
<mapframe width="500" height="270" longitude="79.030" latitude="-24.794" zoom="8" align="center">
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {"fill": "#ff0000","fill-opacity": 0.7,"stroke-width": 0},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[77.926025390625, -25.150257104114733],
[80.14251708984374, -25.150257104114733],
[80.14251708984374, -24.43714786161562],
[77.926025390625, -24.43714786161562],
[77.926025390625, -25.150257104114733]
]
]
}
},
{
"type": "Feature",
"properties": {"stroke": "#fffa00","stroke-width": 5},
"geometry": {
"type": "LineString",
"coordinates": [
[77.926025390625, -25.150257104114733],
[80.14251708984374, -24.43714786161562]
]
}
},
{
"type": "Feature",
"properties": {"stroke": "#000000","stroke-width": 5},
"geometry": {
"type": "LineString",
"coordinates": [
[77.926025390625, -24.43714786161562],
[80.14251708984374, -25.150257104114733]
]
}
}
]
}
</mapframe>
Le code de la carte ci-dessus comprend trois éléments, qui utilisent tous la fonctionnalité "feature" (entité) de GeoJSON. La première entité est un "Polygon" (polygone) - le rectangle rouge. Celle-ci est suivie de deux entités "LineString" (ligne). La ligne jaune est définie en premier, elle apparaît donc sous la ligne noire. Notez que la hiérarchie utilisée pour dessiner des éléments s'applique indépendamment du fait que les données sont des GeoJSON brutes ou proviennent d'un ID Wikidata ou d'une page de données de Commons.
La carte ci-dessous change l'ordre du premier exemple : la ligne noire est définie en premier et est donc déplacée au bas de la pile :
GeoJSON resources
Reference
- Full GeoJSON specification (RFC7946)
- GeoJSON on English Wikipedia
- simplestyle spec used by Kartographer
- Maki icon set used by Kartographer
Guides
Editors and tools
- GeoJSON.io editor
- Vector.rocks editor
- GeoJSON linter to validate your GeoJSON
Groupes par Wikivoyage
Le projet Wikivoyage a besoin d'afficher des cartes dont les données sont définies ailleurs sur la page.
Il peut y avoir plusieurs points d'intérêt (POI) définis avec des balises <maplink>
, qui apparaissent tous sur une seule carte commune sur le côté de la page.
(Voir un exemple utilisant la ville de Salzbourg.)
Le regroupement permet aux éditeurs de partager des données entre plusieurs balises <mapframe>
et <maplink>
.
Normalement, les données à l'intérieur d'une balise <mapframe>
ou <maplink>
sont affichées uniquement sur la carte créée par cette balise et nulle part ailleurs.
Mais sur Wikivoyage, si une balise <maplink>
inclut l'attribut group="..."
, les données à l'intérieur de ces balises seront placées dans un groupe nommé à côté de toutes les autres données portant le même nom de groupe.
Les balises portant le même nom de groupe s'afficheront sur une seule carte de données ; chaque balise ajoute progressivement des données au groupe.
Chaque balise <mapframe>
sur une balise Wikivoyage créé une carte intégrée affichant les groupes spécifiés dans sa balise.
Une carte peut également afficher des groupes supplémentaires en spécifiant l'attribut show="..."
.
Plusieurs noms de groupes peuvent être spécifiés, séparés par une virgule.
Un nom de groupe ne peut contenir que des lettres latines minuscules.
Cette grille illustre les données qui seront affichées pour chaque balise.
Example:
<maplink> -- shows 1
<maplink group='food'> -- shows 2 4 8 10
<maplink group='bar' show='bar'> -- shows 3 9
<maplink group='food' show='bar'> -- shows 2 3 4 8 9 10
<maplink show='bar'> -- shows 3 5 9
<maplink show='food,bar'> -- shows 2 3 4 6 8 9 10
<mapframe> -- shows 7
<mapframe group='food'> -- shows 2 4 8 10
<mapframe group='bar' show='bar'> -- shows 3 9
<mapframe group='food' show='bar'> -- shows 2 3 4 8 9 10
<mapframe show='bar'> -- shows 3 9 11
<mapframe show='food,bar'> -- shows 2 3 4 8 9 10 12
<mapframe>
and <maplink>
tags in templates. Consult Mapshape, Listing and See for a good starting place.
Langues et options de remplacement
Les cartes Kartographer tirent leurs étiquettes du projet de cartographie open source OpenStreetMap (https://www.openstreetmap.org/). Par défaut, Kartographer essaie d'afficher les étiquettes de carte dans la langue du wiki dans lequel la carte intégrée est affichée. Si cette langue n'est pas disponible, la carte utilise la langue de secours configurée dans le wiki, puis la langue locale de la région de la carte spécifiée dans la carte Kartographer. Si aucun de ces éléments n'est disponible, Kartographer n'affiche aucune étiquette.
Vous pouvez spécifier la langue à utiliser pour les étiquettes avec l'attribut lang
et en définissant sa valeur sur le code de langue souhaité Exemple : lang="ja"
affichera les étiquettes en japonais, si elles sont disponibles.
Pour utiliser la langue locale de la zone cartographique, spécifiez lang=local
.
Pour plus d'informations sur l'utilisation de la langue locale dans les étiquettes et sur les données multilingues OpenStreetMap en général, lire cet article.
Les cartes Kartographer obtiennent leurs données, y compris les données d'étiquettes de carte dans toutes les langues disponibles, à partir du projet de cartographie open source OpenStreetMap.
Si la carte que vous souhaitez afficher ne propose pas d'étiquettes dans la langue souhaitée, vous pouvez toujours ajouter des étiquettes dans cette langue en les ajoutant vous-même à OpenStreetMap.
Notez que les noms de pays et de ville sont tirés des nœuds d'étiquettes dans OpenStreetMap, et non des données attachées aux "relations" d'OpenStreetMap.
Pour commencer, consultez le Guide du débutant OpenStreetMap et ces bonnes pratiques en matière de conventions de dénomination.
Exemples
Simple
<mapframe text="San Francisco museums" width="350" height="350" zoom="13" longitude="-122.3988" latitude="37.8013">
{
"type": "Feature",
"geometry": { "type": "Point", "coordinates": [-122.3988, 37.8013] },
"properties": {
"title": "[[w:Exploratorium|Exploratorium]]",
"description": "[[File:Giant_Mirror_at_the_Exploratorium.jpeg|200px]]",
"marker-symbol": "museum",
"marker-size": "large",
"marker-color": "0050d0"
}
}
</mapframe>
Marqueurs et compteurs
Colorado State Capitol with a town hall marker, article link and image
<maplink text="Colorado State Capitol with a town hall marker, article link and image" longitude="-104.98491" latitude="39.73939" zoom="17">
{
"type": "Feature",
"properties": { "marker-symbol": "town-hall", "marker-color": "46ea5f", "marker-size": "medium", "title": "[[w:Colorado_State_Capitol|Colorado State Capitol]]", "description": "[[File:Coloradocapitolhill2.JPG|150px]]"},
"geometry": { "type": "Point", "coordinates": [-104.98485267162323, 39.73928364167763] }
}
</maplink>
Marqueurs numérotés
Colorado State Capitol with a number marker
<maplink text="Colorado State Capitol with a number marker" longitude="-104.98491" latitude="39.73939" zoom="17">{ "type": "Feature", "properties": { "marker-color": "228b22", "marker-symbol": "-number"}, "geometry": { "type": "Point", "coordinates": [-104.98485267162323, 39.73928364167763] }}</maplink>
Marqueurs lettrés
Colorado State Capitol with a letter marker
<maplink text="Colorado State Capitol with a letter marker" longitude="-104.98491" latitude="39.73939" zoom="17">{ "type": "Feature", "properties": { "marker-color": "508e33", "marker-symbol": "-letter"}, "geometry": { "type": "Point", "coordinates": [-104.98485267162323, 39.73928364167763] }}</maplink>
Plusieurs marqueurs dans une feature collection
<maplink text="Denver Amusements" longitude="-105.01247406005858" latitude="39.74956567318853" zoom="14"> {"type": "FeatureCollection", "features": [{ "type": "Feature", "geometry": { "type": "Point", "coordinates": [-105.00768899917603, 39.74859230437501] }, "properties": { "title": "[[w:Pepsi_Center|Pepsi Center]]", "marker-color": "420617", "marker-symbol": "-letter-see", "marker-size":"small"} }, { "type": "Feature", "geometry": { "type": "Point", "coordinates": [-105.01238822937012, 39.7526011757416] }, "properties": { "title": "[[w:Downtown_Aquarium%2C_Denver|Downtown Aquarium Denver]]", "marker-color": "508e33", "marker-symbol": "-letter-see","marker-size":"medium", "description": "[[File:Denver-DTA.jpg|150px]]" } }, { "type": "Feature", "geometry": { "type": "Point", "coordinates": [-105.01247406005858, 39.74956567318853] }, "properties": { "title": "[[w:Confluence_Park|Confluence Park]]", "marker-color": "0d2751", "marker-symbol": "-letter-see", "marker-size":"large" } }, { "type": "Feature", "geometry": { "type": "Point", "coordinates": [-105.01646518707275, 39.74656303364532] }, "properties": { "title": "South Platte Bike Trail", "marker-color": "61b9e2", "marker-symbol": "-number-see", "marker-size":"medium" } },]}</maplink>
Groupes de compteurs automatiques
<mapframe text="Several groups of automatic counters" width="350" height="350" zoom="13" longitude="-122.39902496337889" latitude="37.80151060070086">
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"marker-symbol": "-number",
"marker-color": "302060"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.41816520690917,
37.79097260220947
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number",
"marker-color": "302060"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.40786552429199,
37.799654055191525
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number",
"marker-color": "302060"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.40185737609865,
37.796262984039544
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number",
"marker-color": "302060"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.38743782043457,
37.80535070427755
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number",
"marker-color": "302060"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.38005638122557,
37.795449103799726
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-letter",
"marker-color": "208020"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.40941047668457,
37.81850557172186
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-letter",
"marker-color": "208020"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.40357398986815,
37.81280993744834
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-letter",
"marker-color": "208020"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.39842414855956,
37.8071138637568
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number-bar",
"marker-color": "f01080"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.41181373596191,
37.78595317184089
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number-bar",
"marker-color": "f01080"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.39542007446289,
37.787674400057654
]
}
},
{
"type": "Feature",
"properties": {
"marker-symbol": "-number-bar",
"marker-color": "f01080"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.38649368286131,
37.78401144262929
]
}
}
]
}
</mapframe>
ExternalData
Wikidata QID
<maplink text="State of Colorado, outlined" zoom="7" > { "type": "ExternalData", "service": "geoshape", "ids": "Q1261" } </maplink>
Requête wikidata
<mapframe longitude="-110" latitude="52" zoom="3" width="500" height="500" text="Governors of US states with their party affiliation">
{
"type": "ExternalData",
"service": "geoshape",
"query": "SELECT ?id ?head (SAMPLE(?img) as ?img_) (min(?partyId) as ?party) (if(?party = '0', '#800000', if(?party = '1', '#000080', '#008000')) as ?fill) (concat('[[w:', substr(str(?link),31,500), '{{!}}', ?headLabel, ']]') as ?title) (concat(?stateLabel, '\\n', '[[File:', substr(str(?img_), 52, 500), '{{!}}200px]]') as ?description) WHERE { ?id wdt:P31 wd:Q35657 . ?id wdt:P6 ?head . ?head wdt:P102 ?party . BIND(if(?party = wd:Q29468, '0', if(?party = wd:Q29552, '1', '2')) as ?partyId) SERVICE wikibase:label { bd:serviceParam wikibase:language 'en' . ?head rdfs:label ?headLabel . ?id rdfs:label ?stateLabel . } OPTIONAL { ?head wdt:P18 ?img . } ?link schema:about ?head . ?link schema:isPartOf <https://en.wikipedia.org/> .} GROUP BY ?id ?head ?headLabel ?link ?stateLabel"
}
</mapframe>
Données cartographiques de Commons
<mapframe width="300" height="400">
{
"type": "ExternalData",
"service": "page",
"title": "Neighbourhoods/New York City.map"
}
</mapframe>
Types mixtes
<mapframe text="Caderousse city wall" width="300" height="300" zoom="15" longitude="4.75600" latitude="44.10200">
[
{
"type": "ExternalData",
"service": "geoshape",
"ids": "Q13518258",
"properties": {
"stroke": "#ffb100",
"stroke-width": 6,
}
},
{
"type": "Feature",
"geometry": { "type": "Point", "coordinates": [4.75566, 44.104498] },
"properties": {
"title": "Porte de Castellan"
}
},
{
"type": "Feature",
"geometry": { "type": "Point", "coordinates": [4.75829, 44.10258] },
"properties": {
"title": "Porte Léon Roche"
}
}
]
</mapframe>
Types mixtes avec marqueurs
<mapframe width="300" height="300" zoom="12" longitude="-73.965278" latitude="40.782222">
[
{
"type": "ExternalData",
"service": "page",
"title": "Neighbourhoods/New York City.map"
},
{
"type": "ExternalData",
"service": "geoshape",
"ids": "Q160409",
"properties": {
"fill": "#07c63e", "title": "Central Park"
}
},
{
"type": "Feature",
"properties": {"title": "Roosevelt Island", "marker-color": "f01080"},
"geometry": {
"type": "Point",
"coordinates": [
-73.94511222839355,
40.76734665426719
]
}
}
]
</mapframe>
Mixed types with SPARQL query
<mapframe width="300" height="300" text="Manual railway and queried stations">
[
{
"type": "ExternalData",
"service": "geopoint",
"properties": {
"marker-symbol": "rail",
"marker-color": "302060" },
"query": "SELECT ?id ?geo ?idLabel (?idLabel as ?title) WHERE { ?id wdt:P81 wd:Q1760190 ; wdt:P31 wd:Q2175765; wdt:P625 ?geo . SERVICE wikibase:label { bd:serviceParam wikibase:language 'sv'. } }"
},
{
"type": "ExternalData",
"service": "geoline",
"properties": {
"stroke": "#AA0000",
"stroke-width": 3
},
"ids": "Q119890957, Q119891049"
}
]
</mapframe>
Options de rendu
Le tableau suivant montre comment une carte <mapframe>
peut être formatée pour être affichée sur une page wiki. Le tableau contient deux colonnes : la première montre une carte interactive via la balise $2S et la seconde montre le rendu d'une image d'exemple avec les mêmes options.
Options | Rendu d'une <mapframe>
|
Rendu d'une image |
---|---|---|
|
... text text text text text text ... | ... text text text |
|
Not supported: see tâche T157502. | ... text text text |
|
... text text text text text text ... | ... text text text |
|
... text text text text text text ... | ... text text text |
|
... text text text text text text ... | ... text text text |
|
... text text text text text text ... Inconsistent, see tâche T157640. |
... text text text text text text ... |
|
Not supported: see tâche T157502. | ... text text text |
|
... text text text text text text ... | ... text text text |
|
... text text text text text text ... | ... text text text |
|
... text text text text text text ... | ... text text text |
Utilisez la valeur de largeur full
afin que la carte occupe toute la largeur de la page.
<mapframe width="full" height="200" zoom="13" longitude="-122.39953994750977" latitude="37.81032643553478"></mapframe>
<mapframe width="full" height="200" zoom="13" longitude="-122.39953994750977" latitude="37.81032643553478" frameless></mapframe>
Stylisation
<mapframe text="Interstate Highway I-696" width="300" height="300" longitude="-83.2297" latitude="42.4883" zoom="9">
{
"type": "ExternalData",
"service": "geoline",
"ids": "Q2108",
"properties": {
"title": "Highway I-696",
"description": "[[File:I-696 near M-10 in 1988.jpg|200px]]",
"stroke": "#ffb100",
"stroke-width": 8
}
}
</mapframe>
Voir aussi
- Informations d'implémentation de Kartographer
- Special:MyLanguage/Help:VisualEditor/Maps - Ajouter et modifier des cartes avec l'éditeur visuel
- Utilisation de Kartographer avec OpenStreetMap
- Maps project (2015-2017) - Documentation sur l'activité d'ingénierie Wikimedia de l'équipe Discovery de 2015 à 2017
- Map improvements 2018 - Documentation sur l'activité d'ingénierie Wikimedia de l'équipe Collaboration en 2018
- WMDE Geoinformation - Documentation sur l'activité d'ingénierie de WMDE entre 2021 et 2023, faisant partie de WMDE Technical Wishes.
- Guide du développeur de Kartographer
- Conditions d'utilisation des cartes