He intentado renderizar algunos mapas en Mapnik y tengo un pequeño problema. Quiero renderizar un mapa que contiene dos capas: punto y polígono. He utilizado este script:
import mapnik
rule = mapnik.Rule()
rule.symbols.append(mapnik.PolygonSymbolizer(mapnik.Color("darkgreen")))
rule.symbols.append(mapnik.PointSymbolizer())
style = mapnik.Style()
style.rules.append(rule)
layer = mapnik.Layer("mapLayer")
layer.datasource = mapnik.Shapefile(file="polska.shp")
layer.styles.append("mapStyle")
map = mapnik.Map(640, 480)
map.background = mapnik.Color("white")
map.append_style("mapStyle", style)
map.layers.append(layer)
map.zoom_all()
mapnik.render_to_file(map, "map.png", "png")
Sólo hay un shapefile para renderizar, pero ese es mi problema. Cuando estoy añadiendo la 4ª línea rule.symbols.append(mapnik.PointSymbolizer())
Siempre obtengo polígonos renderizados con puntos adicionales (supongo que los centroides de cada objeto):
¿Por qué hay puntos negros? ¿Hay alguna posibilidad de renderizar dos capas (polígonos y puntos) al mismo tiempo, sin estos centroides? ¿Qué estoy haciendo mal?