def get_styles(self): s = Style() r = Rule() symbolizer = RasterSymbolizer() r.symbols.append(symbolizer) s.rules.append(r) return [(self.style_name, s)]
def get_band_style(self, band_num): s = Style() r = Rule() symbolizer = RasterSymbolizer() band = self.raster.bands[band_num - 1] colorizer = RasterColorizer() colorizer.default_mode = mapnik.COLORIZER_LINEAR colorizer.add_stop(band.min, mapnik.COLORIZER_LINEAR, mapnik.Color('#000')) colorizer.add_stop(band.max, mapnik.COLORIZER_DISCRETE, mapnik.Color(self.band_colors[band_num - 1])) symbolizer.colorizer = colorizer s.comp_op = mapnik.CompositeOp.plus r.symbols.append(symbolizer) s.rules.append(r) return self.get_band_style_name(band_num), s
import cairo from mapnik import Style, Rule, Color, Filter, LineSymbolizer, PolygonSymbolizer, TextSymbolizer, label_placement, Shapefile, SQLite, Layer, Map, render, Shapefile, Expression, save_map map_output = 'france' m = Map(300, 300, proj4) m.background = Color('steelblue') t = TextSymbolizer(Expression('[CODE_DEPT]'), 'DejaVu Sans Book', 8, Color('black')) f = Expression("[CODE_DEPT]<>'75' and [CODE_DEPT]<>'92' and [CODE_DEPT]<>'93' and [CODE_DEPT]<>'94'") t.allow_overlap = 1 t.label_placement = label_placement.POINT_PLACEMENT s1 = Style() r1 = Rule() r1.symbols.append(t) r1.filter = f s1.rules.append(r1) m.append_style('Text', s1) s = Style() r = Rule() r.symbols.append(PolygonSymbolizer(Color('#f2eff9'))) r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'), 0.1)) s.rules.append(r) m.append_style('My Style', s) lyr = Layer('france', proj4) import os
map_output = 'france' m = Map(300, 300, proj4) m.background = Color('steelblue') t = TextSymbolizer(Expression('[CODE_DEPT]'), 'DejaVu Sans Book', 8, Color('black')) f = Expression( "[CODE_DEPT]<>'75' and [CODE_DEPT]<>'92' and [CODE_DEPT]<>'93' and [CODE_DEPT]<>'94'" ) t.allow_overlap = 1 t.label_placement = label_placement.POINT_PLACEMENT s1 = Style() r1 = Rule() r1.symbols.append(t) r1.filter = f s1.rules.append(r1) m.append_style('Text', s1) s = Style() r = Rule() r.symbols.append(PolygonSymbolizer(Color('#f2eff9'))) r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'), 0.1)) s.rules.append(r) m.append_style('My Style', s) lyr = Layer('france', proj4) import os
def basic_chloropleth_class(s, def_filter, color = Color(255, 0, 0)): r = Rule() r.filter = Expression(def_filter) r.symbols.append(PolygonSymbolizer(color)) s.rules.append(r) return s