_ Author _ = 'admin' # encoding: utf-8import sysimport datetimeimport mapnikm = mapnik. map (256,256, "+ proj = latlong + datum = WGS84") # M. background = mapnik. color ('pipelineblue ') # Set background color to 'pipeline '. S = mapnik. style () r = mapnik. rule () polygon_symbolizer = mapnik. polygonsymbolizer (mapnik. color ('pink ') R. symbols. append (polygon_symbolizer) line_symbolizer = mapnik. linesymbolizer (mapnik. color ('rgb (50%, 50%, 50%) '), 0.1) R. symbols. append (line_symbolizer) s. rules. append (r) M. append_style ('postgis ', S) Params = dict (dbname = 'geodb', table = 'tbsvrc _ metadata_10584', user = 'codecs', password = 'codecs ', host = "192.98.12.244", Port = "5432") Params ['estimate _ extent '] = trueds = mapnik. postgis (** Params) # print (Ds. envelope () lyr = mapnik. layer ('postgis lay') lyr. datasource = dslyr. styles. append ('postgis ') M. layers. append (lyr) extext = mapnik. box2d (116.0, 36,120, 38) # M. zoom_all () M. zoom_to_box (extext) starttime = datetime. datetime. now () For I in range (): Path = "C: \ mapnik \ bjw.s.png" % (I); mapnik. render_to_file (M, path, 'png ') # print ("running [% s]... "% (I) endtime = datetime. datetime. now () print ("total data import time: % s description" % (endtime-starttime ). seconds ))
You can modify the parameters in the range to test the rendering efficiency. After testing, you can output 10 images per second. Generate an image, for example: