跳转至内容

维基导游:地理线

来自维客旅行
(重定向自)

一个简单的指南,用于获取行程的线条标记。 可以在 魁北克389号公路斯图尔特公路奥克斯利公路穿越芬兰和挪威的E8公路旅游线路33跨拉布拉多公路 等页面中看到这些示例。 这也可以用于在地图上获取远足径,如 蒙戈国家公园 等页面所示。

如果您在线条标记方面遇到困难或问题,请参阅疑难解答部分。

如果OpenStreetMap上不存在行程路线,或者链接对您来说太麻烦,则需要这样做。 通常,该路线应移至维基媒体共享资源的data:命名空间,但此处不涵盖此步骤,可以稍后处理。

开始设置

[]

步骤1

[]

您需要前往 geojson.io,然后在地图框架中使用右侧的线条工具。 然后绘制您的路线,并单击最后一个点以完成您的线条绘制。 请注意,这可能需要很长时间,但是结果是值得的。 不要关闭标签页。 保持打开状态,因为它将在步骤4中需要。

步骤2

[]

要添加地图,请在文章中您想要地图的位置插入以下代码
{{mapframe}}

如果您想进行一些定制,请添加来自 {{mapframe}} 的任何参数。

步骤3

[]

转到文章的最底部,在所有内容下方,插入以下代码

<maplink text="" latitude="" longitude="" zoom="6" group="route1" class="no-icon"> 

</maplink>

填写经度和纬度。 如果您希望它自动对齐,只需删除这些词,它看起来会像这样

<maplink text="" zoom="6" group="route1" class="no-icon"> 
Your .json code will go here, replacing this line
</maplink>

保持 text="" 不变,不要在其中输入任何内容。 如果您希望,可以调整缩放级别,尽管它是在 {{mapframe}} 上的缩放级别,这将很重要。

步骤4

[]

现在,将您在 geojson.io 上绘制的 json 代码粘贴到 maplinks 之间。 基本上是这样的

<maplink text="" zoom="6" group="route1" class="no-icon">
Your .json code will go here, replacing this line 
</maplink>

所以一个例子看起来像

<maplink text="" zoom="6" group="route1" class="no-icon"> 
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [
            146.0481262207031,
            -34.29977008293614
          ],
          [
            146.0295867919922,
            -34.37177843543121
          ],
          [
            146.0460662841797,
            -34.376879043519054
          ],
          [
            146.03370666503903,
            -34.450519835492656
          ],
          [
            146.0131072998047,
            -34.46976903546482
          ],
          [
            145.99937438964844,
            -34.5478525606475
          ]
        ]
      }
    }
  ]
}
</maplink>

然后,您应该全部完成,并且您的地图应该显示该线。

分支路线

[]

如果您的路线上有分支,那么您需要多一条线。 您可能会注意到 "features": [ 是复数形式。 "[" 开始一个(逗号分隔的)列表,并且它后面的第一个 "{" 开始第一行(或其他)。 您可以只在 geojson.io 上绘制您的下一条线,以便同时获得两条线,并将它们粘贴进去,就好像您只有一条线一样。

如果您已经关闭了您的 geojson.io 窗口,您可以再次转到该站点,将您的代码粘贴到 json 窗口中,然后绘制第二条线。 另一种选择是仅复制与第二条线相关的代码,并确保您正确获得 "{"s、"["s、逗号和行标题。 您可能还想对每条线的用途添加注释; json 代码中的注释以双斜杠 ("//") 开头,并延伸到代码行的末尾。

在某些情况下,您需要两条单独的路线。 然后像第一条线一样,添加一个新的 <maplink ... ></maplink> 部分,其中 group="route2" 代替 group="route1"。 在全屏地图窗口中,您现在将拥有 route1 和 route2 作为单独的图层,可以分别激活和取消激活。 默认情况下,最多可以添加五个单独的路线。 如果您有更多路线,或者它们的名称(在 group="name" 中指定)与标准名称不同,则需要在 mapframe 中添加 show= 参数:show={{maplayers}},route6,route7(该模板添加了标准路线和标记)。

如果您希望对您的线条进行颜色编码,请将该属性添加到 "properties": {} 中,例如 "properties": {"stroke": "#00FF00"}, 表示绿色线条。 00FF00 是十六进制的 RGB 值:此处 00 表示红色,FF 表示绿色,00 表示蓝色。 如果您不确定要使用哪种颜色,只需在 Google 上搜索 "hex color picker",在那里您可以选择一种颜色。 请注意,有时键入英联邦拼写的 "hex colour picker" 可能并不总是提供结果。

重复路线

[]

与分支路线一样,如果您需要复制您的路线(例如,如果路线在高速公路或分隔的公路上行驶),您还需要多条线。 虽然一开始可能没有太大的区别,但是当您放大时,这 非常 明显。 有关重复路线的外观示例,请参阅 User:SHB2000/Getting a line on an itinerary/1

故障排除

[]

问:我收到一个红色框,显示以下内容

[]

<maplink> 问题

  • Attribute "latitude" has an invalid value (属性“latitude”具有无效值)
  • Attribute "longitude" has an invalid value (属性“longitude”具有无效值)

答:您的 <maplink> 可能会像这样: <maplink text="" latitude="" longitude="" zoom="6" group="route1" class="no-icon">

删除纬度和经度。

问:它正在抱怨 json 语法

[]

答:如果路线没有显示,通常在地图下方或编辑窗口上方(在页面预览之后)会有红色文本,抱怨无效的 json 语法。 在编辑 json 时,很容易弄乱大括号和逗号。 也许您粘贴的不是完整的 json 代码。 查看开始和结束,以及您编辑的任何点,并寻找缺少或多余的逗号、奇怪的缩进步骤或任何其他不规则之处。 对于大括号,最简单的方法是从您的 geojson.io 代码窗口或从上面复制代码的开始或结束,并替换任何可能出错的地方。 如果您确实需要帮助,只需在酒吧提出问题,可能有人能够发现错误。

问:救命! 标记消失了

[]

答:很可能地图使用以下代码: {{mapframe|zoom=|height=|width=|layer=|staticmap=|align=|name=|show=city,route1,route2,route3,route4}}.

要使其工作,应沿 city,route1,... 提及其他标记。 更容易使用默认值,而无需 show 参数。 大多数情况下,只需使用 {{mapframe}} 即可,无需任何其他内容。

问:这适用于可切换地图吗?

[]

答:应该可以。 但是,可切换地图意味着除了 route1、route2 等之外,您不能再添加任何值。 既然如此,那么对您添加的所有 maplines 使用 group="route1"。 如果您确实希望对其进行分类,请使用不可见文本 (<!-- and -->)

问:它就是不起作用

[]

答:如果需要更多帮助,请在酒吧提出问题,最终会有人找到问题。 尝试清楚地解释您要执行的操作以及具体不起作用的地方。

© 2026 wikivoyage.cn. Text is available under the CC BY-SA 4.0 License.