跳转至内容

维基导游:地理线

来自维客旅行

这是一个为行程获取线路标记的简单指南。 可以看到此类示例的有魁北克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窗口中,然后绘制第二条线。 另一种选择是仅复制与第二条线有关的代码,并确保您正确获取了 "{"、"["、逗号和行标题。 您可能还想添加一条关于每条线用途的注释; json代码中的注释以双斜杠 ("//") 开头,并延伸到代码行的末尾。

在某些情况下,您需要两条单独的路线。 然后按照第一条线的方式进行操作,添加一个新的<maplink ... ></maplink>部分,使用group="route2"而不是group="route1"。 在全屏地图窗口中,您现在将拥有route1和route2作为单独的图层,可以分别激活和停用。 默认情况下,最多可以添加五个单独的路线。 如果您有更多路线,或者它们的名称(在group="name"中指定)不是标准名称,则需要将show=参数添加到mapframe: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> 问题

  • 属性“latitude”具有无效值
  • 属性“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}}

为了使此功能起作用,应在城市、route1等处提及其他标记。最好使用默认设置,不带show参数。 大多数情况下,只需使用{{mapframe}}而无需任何内容即可。

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

[]

答:应该可以。 但是,可切换地图意味着您除了route1、route2等之外,没有选择添加更多值。由于这种情况,请对您添加的所有mapline使用group="route1"。 如果您确实希望对其进行分类,请使用不可见文本(<!-- and -->

问:它就是不起作用

[]

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

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