【发布时间】:2020-04-12 18:11:31
【问题描述】:
我是 Folium 的新手,但基础知识管理得很好。不过,关于做某事的最佳方式,我有一个稍微抽象的问题:
我有自己的多边形标记形状(geojson 中下面的示例是一个鸡尾酒杯,上面有代表 Jameson 的字母 J!),我希望能够调用这个形状并将其绘制到任何位置的叶图上(非常重要)和规模(不太重要,因为我可以为不同的规模提供不同的文件作为解决方法)。
目前我将它作为geojson,但显然geojson指定了地球上的实际位置(因此是大小)。
所以我想要的是一个存储格式的抽象形状,我可以告诉 folium 将它“放置”在我想要的地图上(可以是地球上的任何地方!),理想情况下是任何大小(但位置最重要) )。
因此,最简单、最简单的方法是什么?我猜是其他格式的形状数据?
我在 geojson 中的示例形状:
{
"type": "FeatureCollection",
"name": "cocktail",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
{ "type": "Feature", "properties": { "Layer": "0", "SubClasses": null, "ExtendedEntity": null, "Linetype": null, "EntityHandle": null, "Text": null }, "geometry": { "type": "LineString", "coordinates": [ [ 3.095, 7.56494, 0.0 ], [ 3.63938, 6.88867, 0.0 ], [ 3.63656, 6.30507, 0.0 ], [ 3.30826, 6.1844, 0.0 ], [ 4.11638, 6.176, 0.0 ], [ 3.79368, 6.30507, 0.0 ], [ 3.78244, 6.88867, 0.0 ], [ 4.33524, 7.56494, 0.0 ], [ 3.095, 7.56494, 0.0 ] ] } },
{ "type": "Feature", "properties": { "Layer": "0", "SubClasses": null, "ExtendedEntity": null, "Linetype": null, "EntityHandle": null, "Text": null }, "geometry": { "type": "LineString", "coordinates": [ [ 3.61692, 7.16086, 0.0 ], [ 3.76004, 7.15804, 0.0 ], [ 3.76563, 7.37696, 0.0 ], [ 3.89469, 7.37696, 0.0 ], [ 3.89469, 7.41342, 0.0 ], [ 3.6225, 7.4106, 0.0 ], [ 3.62532, 7.37131, 0.0 ], [ 3.72071, 7.36849, 0.0 ], [ 3.71511, 7.20296, 0.0 ], [ 3.60851, 7.20578, 0.0 ], [ 3.61692, 7.16086, 0.0 ] ] } }
]
}
【问题讨论】:
-
您可能希望将叶图导出为图像格式,然后使用 PIL 或 OPENCV 覆盖您的徽标。
-
这是一个想法,但我确实需要在绘图之前完成此操作,因此它需要某种形状数据。
-
使用
folium.features.CustomIcon的自定义图标怎么样? -
好建议,这很有效!
-
很高兴,它成功了。请点赞。
标签: python polygon geojson folium