Python mapnik标记并不总是出现

Python mapnik标记并不总是出现,python,ubuntu,mapnik,ogr,Python,Ubuntu,Mapnik,Ogr,我正在Ubuntu 16.04上使用Python中的mapnik 2.2.0。我从csv文件加载OSM数据和一层点。csv文件中的点位于epsg:4326中 根据贴图的大小,不同的点会出现或消失。未显示的点(取决于贴图大小)位于显示的点之间 例如,在1024x1024贴图中,下面列表中的点1、5和8不会显示,但它们会显示在640x480贴图中 下面是我的代码和示例点 感谢您的帮助 谢谢 dl points.csv 经纬度 -81.36267786,31.17942128 -81.34324795

我正在Ubuntu 16.04上使用Python中的mapnik 2.2.0。我从csv文件加载OSM数据和一层点。csv文件中的点位于epsg:4326中

根据贴图的大小,不同的点会出现或消失。未显示的点(取决于贴图大小)位于显示的点之间

例如,在1024x1024贴图中,下面列表中的点1、5和8不会显示,但它们会显示在640x480贴图中

下面是我的代码和示例点

感谢您的帮助

谢谢

dl

points.csv

经纬度

-81.36267786,31.17942128
-81.34324795,31.27446072
-81.47343063,31.24168062
-81.55010796,30.34051442
-81.80767273,30.31021431
-81.37953944,30.19135471
-81.7932574,30.19754696
-81.76737595,30.13418484
-81.84996796,30.08385658
-81.58109463,30.50306859
-81.49115618,30.51390896
-81.5587192,30.63135991
-81.57580261,31.25126381
-81.29788475,29.8236434

#!/usr/bin/env python2

import mapnik


mapfile = '/etc/mapnik-v2.2.0/config/mapnik_osm.xml'

#m = mapnik.Map (640, 480)
#m=mapnik.Map(1280960) m=mapnik.Map(10241024)


我刚刚处理了一个非常类似的问题,即标记不会呈现。我注意到一种趋势,即没有呈现与道路名称标签冲突的道路。我怀疑您可能对其他功能标签有类似的问题(例如,“jacksonville”文本左侧的点,较大的地图显示了一个可能受限的机场)

对我来说,解决方案是在图层对象上将“clear_label_cache”设置为True。即:

layer = mapnik.Layer('coordinates', '+proj=latlong +datum=WGS84')
layer.datasource = mapnik.CSV(file="points.csv", layer_by_index=0)
layer.clear_label_cache = True
...
参考:

希望这有帮助

问候,,
克里斯

克里斯,对不起,我花了这么长时间才回复。添加layer.clear\u label\u cache=True解决了问题。谢谢这也解决了我的问题——我从2.2.0升级到3.x,各种标记从我的地图上消失了
layer = mapnik.Layer('coordinates', '+proj=latlong +datum=WGS84')
layer.datasource = mapnik.CSV(file="points.csv", layer_by_index=0)
layer.clear_label_cache = True
...