Шаблон:Maplink/doc

Этот шаблон добавляет ссылку или рамку для отображения картографических данных, источники которых:

  • данные, которые хранятся в формате GeoJSON на Викискладе
  • объекты линия / контурный объект («полигон») (line/polygon) на OpenStreetMap.
  • координаты, либо добавленные извне, либо привлеченные с Викиданных
  • исходные данные GeoJSON, в идеале включённые с другой страницы

Примечание:

Использование

править

Этот шаблон предназначен для отображения на карте таких объектов, которые представляют собой 1. незамкнутые линии или 2. образованные замкнутыми линиями контуры либо участки поверхности — по терминологии OpenStreetMap, полигоны (от англ. polygon «многоугольник»), которыми являются, среди прочих:

  • Дороги (Roads)
  • Реки (Rivers)
  • Линии метро или железной дороги (Subway or train lines)
  • Маршруты кораблей (Ship courses)
  • Траектории полета (Flight paths)
  • Маршруты путешественников (Explorers' journeys)
  • Ареалы обитания животных (Animal habitats)
  • Страны и их административно-территориальные единицы (Countries and their subdivisions) и пр.

Этот шаблон может также использоваться для отображения точечных объектов (point features) на карте, то есть координат.

Применение

править

Базовое применение

{{maplink|frame=yes|type=line|id=Q1094308|text=пример Mapframe }}
Карта
пример Mapframe
  • Для настройки отображаемой карты доступны дополнительные параметры.
{{maplink|frame=yes|plain=yes|type=line|id=Q1094308|frame-width=200|frame-height=250|frame-long=19.1009|frame-lat=47.5001|zoom=8}}

Карта

Полный набор параметров — для построения карты по данным страницы данных

{{maplink
|display=
|from=
|zoom=
|text=
|icon=
}}

Полный набор параметров — для построения карты по исходныи данным (raw data)

{{maplink
|display=
|raw= <!-- предпочтительно {{Википедия:Map data/подстраница}} -->
|zoom=
|text=
|icon=
}}

Полный набор параметров — для объектов в виде линии / замкнутого контура (geoline/geoshape)

{{maplink
|display=
|type=
|id=
|title=
|description=
|stroke-color=
|stroke-width=
|zoom=
|text=
|icon=
}}

Полный набор параметров — для построения карт с точечными объектами / координатами (point features/coordinates)

{{maplink
|display=
|type=point
|id=
|title=
|description=
|coord=
|marker=
|zoom=
|text=
|icon=
}}

Параметры

править

Общие параметры отображения ссылок на карты и самих географических карт, созданных с помощью этого шаблона

править
display
Этот параметр задаёт то, как результат использования данного шаблона выводится на странице про нанесённый на карту географический объект. Допустимые значения данного параметра:
inline — "в тексте": на странице отображает только ссылку на карту в тексте (это является значением данного параметра по умолчанию, и это значение можно не указывать).
title — "заголовок": выводит только ссылку заголовок
inline,title — "в тексте; заголовок": задаёт отображение как ссылки заголовка, так и ссылки в тексте
title,inline — аналогично предыдущему
text
видимый текст ссылки (если задано отображение только ссылки в виде текста) (или текст подписи (caption) под отображаемым изображением карты при использовании mapframe); подпись по умолчанию «Map» ("географическая карта")
icon
"значок" для отображения значка возле ссылки. Если не хотите отображения значка, задайте значение этого параметра «no» ("нет")
zoom
масштаб карты. Допустимые значения от 1 до 19 (более крупные числа больше увеличивают изображение); значение по умолчанию определяется автоматически самой картой
(помните, что автоматически определяемый масштаб не работает в отношении карт, отображаемых с помощью шаблона mapframe, кроме режимы предварительного просмотра страницы – см. phab:T193455)

Параметры Mapframe (работают только при отображении в тексте (inline display))

frame
"рамка" (отображение карты): установите значение этого параметра в виде «yes» ("да") для отображения на нужный вам страницы самой карты вместо ссылки на карту.
plain
"простая": установите у этого параметра значение «yes» ("да") для вывода только самого изображения карты без рамки вокруг него и без подписи (caption) к карте (при таком значении этого параметра параметр text будет проигнорирован)
frame-align
"положение изображения (карты на странице)". Выравнивание по отношению к странице (положение на странице): left слева, center по центру, либо right справа; значение по умолчанию задано right справа
frame-width
ширина изображения карты; значение по умолчанию задано 300
frame-height
высота изображения карты, значение по умолчанию задано 200
frame-coordinates
(или frame-coord)
координаты изображения карты. Этот параметр не является обязательным; он задаёт координаты центра карты. Для указания координат используйте шаблон {{Coord}} (например, |frame-coordinates = {{Coord|12.34|S|56.78|W}}). Если они не заданы таким образом, координаты будут извлечены из Викиданных.
frame-latitude
(или frame-lat)
географическая широта карты. Этот параметр не является обязательным — он задаёт альтернативное координаты широты для первоначального размещения карты
frame-longitude
(или frame-long)
географическая долгота карты. Этот параметр является необязательным; он задаёт альтернативную координаты долготы к первоначальному размещению карты
Обратите внимание: Если для границы отображаемой карты широта и долгота не заданы с помощью параметров, в таком случае они будут определены автоматически одним из следующих способов:
  • будут использоваться координаты из параметра |coord = для линейных и контурных объектов на карте (если они заданы именно таким образом), либо
  • Использованы координаты точечного географического объекта, либо
  • будут привлечены координаты из Викиданных (если они там доступны, так как либо объект указан с помощью параметра числового идентификатора Викиданных |id =, либо для страницы, на которую помещается данный шаблон)
overlay
наложение, врезка карты. Изображение или другая карта (обычно меньшего размера) для отображения в режиме наложения на основную карту (на её часть). Например
|overlay = [[File:Example.svg|140x140px]] или
|overlay = {{maplink|frame=yes|plain=yes|frame-width=100|frame-height=100|type=shape|id={{get QID|French submarine Ariane (1914)}}|frame-align=center}} или
|overlay = {{Graph:Street map with marks|width=100|height=100|lat=37.8|lon=-122.4|zoom=6|{ "lat": 37.8, "lon": -122.4 }|minimap=false}}
(см. примеры использования наложения в данном шаблоне в английской Википедии)
overlay-horizontal-alignment
выравнивание наложения по горизонтали, положения либо left слева, либо right справа; по умолчанию значение right справа
overlay-vertical-alignment
выравнивание наложения по вертикали, либо top сверху, либо bottom снизу; значение по умолчанию bottom снизу
overlay-horizontal-offset и overlay-vertical-offset
отступ наложенного изображения, врезки. Необязательный параметр: количество пикселей для создания отступа врезки от края карты, например 10 для создания отступа в 10 пикселей
overlay-border
граница наложения, врезки. Стиль CSS в отношении линии границы, например толщина линии 3 пикселя при сплошной чёрной линии указывается как 3px solid black; по умолчанию предусмотрена сплошная белая линия толщиной в 1 пиксель 1px solid white. Можно указать любой HTML-цвет линии с помощью его названия (name) или шестнадцатеричного кода (hex code).

Исходные (raw) данные GeoJSON

править
raw
исходные данные GeoJSON (предпочтительно вызываемые с соответствующей подстраницы картографических данных Википедия:Map data), как и функционал <maplink> недоступен через остальные параметры . Подробнее см. ниже.

Для каждого географического объекта

править

На одной карте можно отобразить несколько географических объектов. Для отображения каждого дополнительного объекта добавьте порядковый номер к концу параметра названия объекта name. Например, второй использует такие параметры как |type2 =, |id2 = и т.д. третий объект |type3 =, |id3 = и т.д., и т.п..

type
("тип") Тип данных. Допустимые значения следующие:
line — географический объект в виде незамкнутой линии (geoline feature) с OSM (например, дорога)
shape — географический объект в виде замкнутой контурной линии (geoshape feature) с OSM (например, контур государства или провинции)
shape-inverse — инверсия затенения (заливки темным цветом) контурного объекта (a geomask feature) с OSM (инверсия геоконтура (inverse of a geoshape) — позволяет рассмотреть карту объекта внутри контура)
data — страница данных geoJSON (geoJSON data page) на Викискладе (в данном случае параметр не обязательный)
point — точечный географический объект (point feature)(координаты — coordinates)
id
(или ids)
идентификатор (id) или идентификаторы (ids) с Викиданных (Wikidata id) (число без пробелов после буквы Q) для обозначения точечного географического объекта (point feature), а именно тот идентификатор на Викиданных (Wikidata id), которым помечены незамкнутая линия или замкнутый контур с OSM (line/shape feature). Если идентификаторов несколько, разделяйте их запятой. По умолчанию вызывает с Викиданных тот идентификатор объекта, который относится к текущей странице (если другой не указан с помощью параметра |from =).
from
("из"). Файл JSON (.map) с Викисклада для отображения (исключая префикс Data:)
title
("название"). Название отображаемого географического объекта (для объектов с OSM), отображается при нажатии на объект; по умолчанию выводится заголовок данной страницы
description
("описание"). Описание данного географического объекта (для объектов с OSM), отображается при нажатии на объект ; параметр не обязательный.
stroke-color
(или stroke-colour)
("цвет линии"). Цветовой код для цвета рисования географического объекта (для объектов с OSM); по умолчанию значение #ff0000 (красный - red)
stroke-width
("ширина линии"). Ширина линий для рисования данного географического объекта (для объектов с OSM); значение по умолчанию 6
coord
координаты для отображения точечного географического объекта. Чтобы указать координаты, используйте шаблон {{Coord}}. Если этот параметр здесь не задан, координаты будут привлекаться с Викиданных.
marker
("маркер"). Название изображения маркера Maki (Maki marker image) для отображения в точке объекта - см. список на МедиаВики:Помощь:Расширение:Картограф/Иконки. Если этот параметр не задан, будет отображён простой маркер без пиктограммы типа точечного объекта на нём.
marker-color
(или marker-colour)
("цвет маркера"). Цветовой код HTML-цвета (HTML-цвета в виде трёх пар шестнадцатеричных цифр), задающий цвет фона маркера. Код по умолчанию 5E74F3 (    )

Примеры и рекомендации

править

Отображение на одной карте нескольких географических объектов (Multiple features)

править

Функция отображения на одной карте нескольких географических объектов позволяет:

  • Использовать внешние данные как с Викисклада (Wikimedia Commons), так и с OpenStreetMap одновременно
  • Применять разные стили выделения к объектам с разными внешними данными с OpenStreetMap
  • Включать сразу несколько ссылок на внешние данные с Викисклада
Карта
Map
{{Maplink|frame=yes
|type=shape|id=Q3495894|title=Shape|description=Описание контурного объекта
|type2=line|id2=Q1318331|title2=Line|description2=Описание объекта в виде незамкнутой линии
|type3=point|coord3={{coord|32|S|116|E}}|title3=Point|description3=Описание объекта в виде точки
}}

Карта

{{Maplink|frame=yes|plain=yes|frame-width=250|frame-height=280|zoom=6|frame-lat=29.185|frame-long=76.225
|type=shape-inverse|id=Q1174|title=Haryana
|type2=point|id2=Q200663|stroke-width=3|title2=Faridabad
}}

Шаблоны-карточки (Infoboxes)

править

Карты Mapframes можно включать в шаблоны-карточки (infoboxes). Рекомендуется использовать значение параметра |plain = yes, чтобы убрать рамку вокруг карты.

В простых случаях с одним географическим объектом можно использовать вместо этого шаблон {{infobox mapframe}} (подробная информация в документации этого шаблона).

Пример с карточкой-шаблоном (template) австралийской дороги (Australian road):

{{[[:Template:Infobox Australian road |Infobox Australian road ]]|road_name=Mitchell Freeway|type=freeway|show_links=no|loc_caption=карта северных пригородов Перта с выделенным красным цветом шоссе Митчелла|location=Карта}}

{{Infobox Australian road
| location = {{maplink |type=line |frame=yes |plain=yes |frame-align=center |frame-lat=-31.8262 |frame-long=115.7877 |zoom=9}}
  ...  (Прочие параметры опущены)  ...
}}

Аналогично создаётся карта, например, для русского шаблона-карточки {{Канал}} :

Карта

{{Infobox mapframe |id=Q1137992|frame-height=250  |frame-width=250| zoom=12|mapframe-caption=трасса канала Грибоедова}}

Вот эта карта встроена в шаблон карточку:

Канал Грибоедова
Канал Грибоедова, вид в сторону церкви Спаса на Крови, слева часть колоннады Казанского собора; за ней возвышается стеклянный купол Дома «Зингер» (Дома книги); справа голубое здание дома Энгельгардта с Малым залом Петербургской филармонии и выходом станции метро «Невский проспект»
Канал Грибоедова, вид в сторону церкви Спаса на Крови, слева часть колоннады Казанского собора; за ней возвышается стеклянный купол Дома «Зингер» (Дома книги); справа голубое здание дома Энгельгардта с Малым залом Петербургской филармонии и выходом станции метро «Невский проспект»
Расположение
Страна
Субъект РФСанкт-Петербург
РайонЦентральный район
Характеристика
Длина канала5,1 км
Расход воды3,1—3,4 м³/с
Водоток
ГоловаМойка
59°56′30″ с. ш. 30°19′44″ в. д.HGЯO
УстьеФонтанка 
59°55′00″ с. ш. 30°16′52″ в. д.HGЯO
Maplink/doc (Санкт-Петербург)
Голубая точка
Синяя точка — устье
— голова, — устье
Карта


Вот код этой карточки:

{{Канал
 |Название                = Канал Грибоедова
  |Национальное название  = 
 |Изображение             = Griboyedov_Canal.jpg
  |Подпись изображения    = Канал Грибоедова, вид в сторону церкви [[Спас на Крови|Спаса на Крови]], слева часть колоннады Казанского собора; за ней возвышается стеклянный купол Дома «Зингер» (Дома книги); справа голубое здание дома Энгельгардта с Малым залом Петербургской филармонии и выходом станции метро «[[Невский проспект (станция метро)|Невский проспект]]»
 |Длина                   = 5,1
 |Площадь водосбора       = 
 |Расход воды             = 3,1—3,4
  |Место измерения        = 
 |Голова                  = Мойка (река)
  |Местоположение головы  = 
  |Высота головы          = 
  |Координаты головы      = 59.9416/30.3288
 |Устье                   = Фонтанка
  |Местоположение устья   = 
  |Высота устья           = 
  |Координаты устья       = 59.9167/30.2812
 |Страна                  = Россия
  |Регион                 = Санкт-Петербург
   |Район                 = Центральный район (Санкт-Петербург)|Центральный
|Вставка={{Infobox mapframe |id=Q1137992|frame-height=250  |frame-width=250| zoom=12|mapframe-caption=трасса канала Грибоедова}}
}}

Параметр raw

править

Параметр «raw» позволяет использовать те же данные, что и полная функция тега <maplink>. Это позволит:

  • Использовать напрямую данные GeoJSON
  • Использовать запросы к Викиданным (Wikidata queries) для получения информации для карты
  • Использовать шаблоны — если карта привлекает напрямую GeoJSON или много компонентов, помещение данных в шаблоны позволит избежать загромождения текста самой статьи.

Смотри инструкции в Помощь:Расширение:Картограф

Пример карты с исходными данными GeoJSON (Raw GeoJSON)

править

Путевая карта Гринвич-стрит

{{maplink|raw={{Wikipedia:Map data/Main Roads Western Australia/Forrest Highway}}|text=Путевая карта шоссе Forrest в Западной Австралии}}

(Ссылка на подстраницу данных GeoJSON: Википедия:Map data/Гринвич-стрит)

Пример запроса исходных данных с Викиданных (Raw Wikidata query )

править
Карта
Map
{{maplink|frame=yes|raw={
  "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('[[', 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
"}|frame-width=600|frame-height=400|frame-lat=52|frame-long=-110|zoom=3}}

Возможные проблемы

править
  • При получении данных о незамкнутых линиях и замкнутых контурах с OSM отсутствует возможность задать цвет заливки или степень прозрачности заливки и контурных линий (если вы не используете параметр |raw =)
  • Следующий код, использующий параметр |raw =, не будет работать потому что фигурная скобка для закрытия GeoJSON соседствует с фигурными скобками конца шаблона:
{{Maplink|raw= {"type": "ExternalData","service": "geoshape","ids": "Q13518258"}}}
чтобы это исправить, вставьте пробел перед двумя закрывающими шаблон фигурными скобками или перенесите их на отдельную строку.