geoJson映射,轴错误

2024-09-27 19:25:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我想映射一些以geoJson格式存储的位置。问题是地图轴(x和y)从-2e7到2e7,而不是-180到180(longtidue-x轴-)和-90到90(纬度-y轴-)。然后,当我想映射我的位置{"longitude": 48.90314,"latitude":20.70890}时,我必须写{"longitude": 4890314,"latitude":2070890},否则它在地图中的位置是错误的。在

有人知道为什么会这样吗?我做错了什么?在

这是我的python脚本:

    from bokeh.io import output_file, show
    from bokeh.models import GeoJSONDataSource, HoverTool
    from bokeh.plotting import figure
    from bokeh.tile_providers import CARTODBPOSITRON
    import json

    geo_source = GeoJSONDataSource(geojson=json.dumps(geoJson_file))
    p = figure()
    p.add_tile(CARTODBPOSITRON)

    p.circle(x='x', y='y', alpha=0.9, size=10, source=geo_source)

    p.add_tools(HoverTool(tooltips=[
        ("name", "@name"),
        ("(Long, Lat)", "(@x, @y)"),
    ]))
    output_file("geojson.html")
    show(p)

这是我要映射的geoJson文件(py脚本中的geoJson_文件):

^{pr2}$

这是我得到的地图(但是你可以看到lon/lat不是它应该的,因为我必须修改geoJson文件中的lon/lat编号(48.90314到4890314,20.70890到2070890),否则它在地图中的位置就不正确了enter image description here


Tags: 文件fromimport脚本sourceoutputgeojsonshow

热门问题