UNMAINTAINED! Renders beautiful SVG maps in Python.

Overview

Kartograph is not maintained anymore

As you probably already guessed from the commit history in this repo, Kartograph.py is not maintained, which means that bugs are not being fixed and new features are not being added anymore. The original maintainer decided to move on with his life.

Bummer, I know! But... there is a great alternative!

I highly recommend using mapshaper instead, either the web gui or via command-line. It's what I use for all my mapping needs nowadays.

Of course, if anyone wants to take over, kartograph.py is all yours.


Kartograph.py

Kartograph is a Python library that generates SVG maps from ESRI shapefiles. Please have a look at the API docs for more details.

Author

Kartograph was created by Gregor Aisch and is supported by dpa-newslab, Piwik Web Analytics and the Open Knowledge Foundation.

License

Kartograph.py is licensed under AGPL

Current status

Kartograph.py is still beta, which means that there are some bugs left to fix.

However, feel free to test it while it is been developed. To do so I recommend to use virtualenv and virtualenv-wrapper.

> mkdir kartograph-py
> git clone [email protected]:kartograph/kartograph.py.git kartograph-py

# create and activate a new virtual environment
> mkvirtualenv kartograph

# install and use Kartograph
(kartograph)> cd kartograph-py
(kartograph)> python setup.py install

See install documentation

Comments
  • 'unicode' object does not support item assignment

    'unicode' object does not support item assignment

    I succeed install kartograph.py on Ubuntu 11.10 and refer to https://github.com/kartograph/kartograph.py/wiki/Installing-on-Ubuntu

    but i get the following error when i try to run kartograph world.json -o world.svg

    cli.py, in render_map()
      65: K.generate(cfg, args.output, preview=args.preview, format=format, stylesheet=css)  kartograph.py, in generate()
      41: parse_options(opts)  options.py, in parse_options()
      57: parse_layers(opts)  options.py, in parse_layers()
      98: layer['id'] = layer_id
    'unicode' object does not support item assignment
    

    I hope someone can help. Thanks!

    opened by gnepud 4
  • Fixed OS X 10.7 install (again)

    Fixed OS X 10.7 install (again)

    For some reason my previous fix wasn't enough to make it work on a machine where the install wasn't attempted before. Bloody Python dependency management! :)

    This should work.

    opened by jerstucki 4
  • Error when generating svg

    Error when generating svg

    I ran into the following issue while generating a svg map. The used shapefile is the Admin 1 – States, Provinces loaded into QGIS to select all the german states and then saved as.

    kartograph svg map.yaml -o germany.svg
    
    -> full extend
    Traceback (most recent call last):
    File "/usr/local/bin/kartograph", line 8, in <module>
    load_entry_point('kartograph.py==0.2.0', 'console_scripts', 'kartograph')()
    File "/Library/Python/2.7/site-packages/kartograph.py-0.2.0-py2.7.egg/kartograph/cli.py", line 95, in main
    args.func(args)
    File "/Library/Python/2.7/site-packages/kartograph.py-0.2.0-py2.7.egg/kartograph/cli.py", line 64, in svg
    K.generate(cfg, args.output)
    File "/Library/Python/2.7/site-packages/kartograph.py-0.2.0-py2.7.egg/kartograph/kartograph.py", line 30, in generate
    view = self.get_view(opts, bbox)
    File "/Library/Python/2.7/site-packages/kartograph.py-0.2.0-py2.7.egg/kartograph/kartograph.py", line 201, in get_view
    return View(bbox, w, h - 1)
    TypeError: unsupported operand type(s) for -: 'str' and 'int'
    
    {
      "proj": {
        "id": "ortho",
      },
      "layers": [
        {
          "id": "countries",
          "src": "germany-real.shp",
          "attributes": {
            "NAME_1": "Bundesland",
          }
        }
      ],
      "export": {
        "width": "auto",
        "height": "auto"
      },
      "bounds": {
        "padding": 0.02
      }
    }
    

    I hope someone can help. Thanks!

    bug 
    opened by ferdinandsalis 3
  • Fixed Install on OS X 10.7 + CLI options

    Fixed Install on OS X 10.7 + CLI options

    A note for the CLI fix: A call to

    kartograph svg config.yaml -o map.svg
    

    didn't parse the -o option, thus always generating a tmp.svg and trying to open it with the firefox command (which generates an error if you don't have it).

    I fixed this but now you can't mix

    kartograph svg config.yaml -o map.svg
    

    with

    kartograph svg -c config.yaml -o map.svg
    

    I don't really know what makes the most sense for the API.

    Cheers!

    opened by jerstucki 3
  • Kartograph test does not work on manual install

    Kartograph test does not work on manual install

    I had to install Kartograph using the "manual" instructions, as the version of polygon included in the setup.py does not compile on either of my Macs (running 10.7.3 with gcc 4.2). (The latest version on the Polygon github installs properly from its setup.py). Once installed, I tried to run the test script, and hit the following error:

    $ kartograph svg united-states.yaml -o states.svg
    Proj(laea, lon0=-96.5, lat0=37.5)
    simplifying layer_0
    layer_0
    Traceback (most recent call last):
      File "/usr/local/bin/kartograph", line 8, in <module>
        load_entry_point('kartograph.py==0.1.3', 'console_scripts', 'kartograph')()
      File "/Library/Python/2.7/site-packages/kartograph.py-0.1.3-py2.7.egg/kartograph/cli.py", line 57, in main
        K.generate(cfg, output)
      File "/Library/Python/2.7/site-packages/kartograph.py-0.1.3-py2.7.egg/kartograph/kartograph.py", line 58, in generate
        svg.preview()
      File "/Library/Python/2.7/site-packages/kartograph.py-0.1.3-py2.7.egg/kartograph/svg.py", line 37, in preview
        call(["firefox", "tmp.svg"])
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 486, in call
        return Popen(*popenargs, **kwargs).wait()
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 672, in __init__
        errread, errwrite)
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1202, in _execute_child
        raise child_exception
    OSError: [Errno 2] No such file or directory
    

    The contents of united-states.yaml are:

    layers:
    - src: shp/united-states.shp
    bounds:
      mode: bbox
      data: [-120,25,-73,50]
    

    The shapefiles are those downloaded from http://data.kartograph.org/united-states.zip.

    Since this involves a call to Firefox, I tried upgrading to the latest version of Firefox (11), but it does not appear to've helped.

    opened by futuraprime 3
  • dict of dicts for config does not work

    dict of dicts for config does not work

    [moved here from kartograph.org - mistakenly posted to the website issues list]

    I am working through the example Python code here: http://kartograph.org/docs/kartograph.py/#adding-map-layers

    The method to use a dict of dicts does not work for me. However, the older (and to be deprecated) list method does work.

    Using the dict of dicts:

    infile = 'myfile.shp' cfg = {"layers": {"mylayer": {"src": infile}}} K = kartograph.Kartograph() K.generate(cfg, outfile = 'mymap.svg')

    This generates an error: "IndexError: list index out of range". It seems that parse_layers() is iterating over the names of the layers rather than the contents of the dictionary.

    Using the dict of lists, which the documentation suggests is a deprecated way to call generate(), works fine:

    cfg = {"layers": [{"id": "mylayer", "src": infile}]} K = kartograph.Kartograph() K.generate(cfg, outfile = 'mymap.svg')

    Am I making a mistake here or is there a bug in parse_layers?

    opened by amillb 2
  • Install Fails Run_Tests.py

    Install Fails Run_Tests.py

    Thanks for this great piece of software. I have started to play with it and one of the things I noticed as that on my machine the run_tests.py tells me that I pass only 7 of the 15 tests. I am wondering if this test quite is supposed to be passed and if there is a way to report/troubleshoot the errors in the output log. It looks like a lot of my errors are related to interpretation of the'u'ISO_A3' string.

    I am including the log below for reference.

    thanks and great work, zach cp

    
    
    Error in test configs/bounds-layer.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/bounds-min-area.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      244: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/bounds-polygons.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      244: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/buffered-labels.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      244: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-line.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-as-bounds.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      62: layer.get_features()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/maplayer.py, in get_features()
      81: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/maplayer.py, in <lambda>()
      73: filter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-labels.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-proj.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-polygon.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      236: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/default-labels.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      244: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/dict-layer.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      62: layer.get_features()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/maplayer.py, in get_features()
      81: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/maplayer.py, in <lambda>()
      73: filter = lambda rec: filter_record(layer.options['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/join-features.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      65: me._join_features()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _join_features()
      452: if feat.props[groupBy] in groups[g_id] or str(feat.props[groupBy]) in groups[g_id]:
    
    u'ISO_A3'
    
    Error in test configs/osm.yaml  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      43: layer = MapLayer(layer_id, layer_cfg, me, layerCache)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/maplayer.py, in __init__()
      35: self.source = handle_layer_source(self.options, self.cache)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/__init__.py, in handle_layer_source()
      49: src = PostGISLayer(src[8:], query=layer['query'], table=layer['table'])
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/postgislayer.py, in __init__()
      24: self.conn = psycopg2.connect(src)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/__init__.py, in connect()
      179: connection_factory=connection_factory, async=async)
    
    could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
    
    
    Error in test configs/styled-labels.json  run_tests.py, in <module>()
      37: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __init__()
      49: me.proj = me._init_projection()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _init_projection()
      89: map_center = self.__get_map_center()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in __get_map_center()
      141: features = self._get_bounding_geometry()
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      254: charset=layer.options['charset']
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      97: if filter is None or filter(drec):
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      249: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/map.py, in <lambda>()
      244: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/kartograph.py-0.6.2-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    opened by zachcp 2
  • error executing kartograph.py on windows: import options

    error executing kartograph.py on windows: import options

    hi, i like to know about this trace generated using kartograph.py for generating svg maps

    used command :

    python c:\Kartograph\kartograph\kartograph.py SHP_TEST.json -o SHP_TEST.svg

    Traceback (most recent call last): File "c:\Kartograph\kartograph\kartograph.py", line 2, in from options import parse_options File "c:\Kartograph\kartograph\options.py", line 7, in import os.path, proj, errors File "c:\Kartograph\kartograph\proj__init__.py", line 50, in from azimuthal import * File "c:\Kartograph\kartograph\proj\azimuthal__init__.py", line 19, in from azimuthal import Azimuthal File "c:\Kartograph\kartograph\proj\azimuthal\azimuthal.py", line 20, in from kartograph.proj.base import Proj File "c:\Kartograph\kartograph\kartograph.py", line 2, in from options import parse_options ImportError: cannot import name parse_options

    regards

    opened by marlonlom 2
  • Remove svgfig dependency

    Remove svgfig dependency

    svgfig seems to be a bit over-featured for what Kartograph actually needs. A more simple XML package should work as well and would simplify the installation procedure (svgfig has no pypi package yet).

    opened by gka 2
  • Add More Simplification Algorithms

    Add More Simplification Algorithms

    The current implemented simplification algorithm is based on filtering points by distance. It would be great to have some smarter algorithms on board.

    opened by gka 2
  • tests failing

    tests failing

    The tests fail in two ways. First, they rely on wget, which is no longer widely available. That's a minor issue. With ne_50m_admin_0_countries.shp manually downloaded, I got these test results, run with GDAL 1.10.1 on OS X:

    running text all-attributes.yaml ... warning: could not encode to unicode
    ok.
    running text bounds-bbox-styled.json ... ok.
    running text bounds-bbox.json ... ok.
    running text bounds-layer.json ... failed.
    running text bounds-min-area.json ... failed.
    running text bounds-polygons.json ... failed.
    running text buffered-labels.json ... failed.
    running text choropleth.yaml ... ok.
    running text csv-line.json ... failed.
    running text csv-points-as-bounds.json ... failed.
    running text csv-points-labels.json ... failed.
    running text csv-points-proj.json ... failed.
    running text csv-points.json ... failed.
    running text csv-polygon.json ... failed.
    running text default-labels.json ... failed.
    running text dict-layer.json ... failed.
    running text globe.yaml ... ok.
    running text join-features.json ... failed.
    running text osm.yaml ... failed.
    running text prettyprint.yaml ... failed.
    running text simplify.yaml ... ok.
    running text styled-labels.json ... failed.
    running text worldmap.yaml ... ok.
    passed: 7
    failed: 16
    

    log.txt:

    Error in test configs/bounds-layer.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/bounds-min-area.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      247: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/bounds-polygons.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      247: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/buffered-labels.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      247: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-line.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-as-bounds.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      61: layer.get_features()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/maplayer.py, in get_features()
      81: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/maplayer.py, in <lambda>()
      73: filter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-labels.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points-proj.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-points.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/csv-polygon.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/default-labels.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      247: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/dict-layer.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      61: layer.get_features()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/maplayer.py, in get_features()
      81: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/maplayer.py, in <lambda>()
      73: filter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    Error in test configs/join-features.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      64: me._join_features()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _join_features()
      458: if feat.props[groupBy] in groups[g_id] or str(feat.props[groupBy]) in groups[g_id]:
    
    u'ISO_A3'
    
    Error in test configs/osm.yaml  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      42: layer = MapLayer(layer_id, layer_cfg, me, layerCache)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/maplayer.py, in __init__()
      35: self.source = handle_layer_source(self.options, self.cache)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/__init__.py, in handle_layer_source()
      49: src = PostGISLayer(src[8:], query=layer['query'], table=layer['table'])
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/postgislayer.py, in __init__()
      23: raise KartographError('You need to install psycopg2 (and PostgreSQL) if you want to render maps from PostGIS.\ne.g.\n    pip install psycopg2')
    
    Kartograph-Error: You need to install psycopg2 (and PostgreSQL) if you want to render maps from PostGIS.
    e.g.
        pip install psycopg2
    
    Error in test configs/prettyprint.yaml  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      239: layerFilter = lambda rec: filter_record(layer.options['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      25: res = res and filter_record([key, '=', filt[key]], record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    'ISO_A3'
    
    Error in test configs/styled-labels.json  run_tests.py, in <module>()
      38: K.generate(cfg, 'results/' + fn_parts[0] + '.svg', preview=False, format='svg', stylesheet=css)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __init__()
      48: me.proj = me._init_projection()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _init_projection()
      88: map_center = self.__get_map_center()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in __get_map_center()
      140: features = self._get_bounding_geometry()
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in _get_bounding_geometry()
      257: charset=layer.options['charset']
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/layersource/shplayer.py, in get_features()
      96: if filter is None or filter(drec):
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      252: filter = lambda rec: layerFilter(rec) and boundsFilter(rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/map.py, in <lambda>()
      247: boundsFilter = lambda rec: filter_record(data['filter'], rec)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_record()
      27: res = filter_single(filt, record)
      /Users/neil/.envs/kartograph/lib/python2.7/site-packages/kartograph.py-0.6.8-py2.7.egg/kartograph/filter.py, in filter_single()
      35: prop = record[key]
    
    u'ISO_A3'
    
    opened by fitnr 1
  • docs: fix simple typo, geoemtry -> geometry

    docs: fix simple typo, geoemtry -> geometry

    There is a small typo in kartograph/layersource/postgislayer.py.

    Should read geometry rather than geoemtry.

    Semi-automated pull request generated by https://github.com/timgates42/meticulous/blob/master/docs/NOTE.md

    opened by timgates42 0
  • README refers to non-existing API docs wiki page

    README refers to non-existing API docs wiki page

    The README links to API docs - however the wiki of this Github project seems to be disabled.

    Is http://kartograph.org/docs/kartograph.py/ the entire documentation or is there additional content, which was previously in the wiki? I have the feeling that the one-page docs is incomplete (e.g. missing information how/when labels are created for objects).

    opened by nidico 0
  • "not a string" when attempting to use Kartograph.py

    I run: kartograph cfg.json -f svg -o map.svg Where the contents of cfg.json are:

    {
    	"proj" : {
    		"id" : "mercator",
    		"lon0" : -5
    	},
    	"layers": {
    		"background" : {"special" : "sea"},
    		"constituencies" : {
    			"src" : "scotland.shp",
    			"simplify" : true
    		}
    	}
    }
    

    The following error is produced:

      /cli.py, in render_map()
      71: K.generate(cfg, args.output, preview=args.preview, format=format, stylesheet=css)  /kartograph.py, in generate()
      46: _map = Map(opts, self.layerCache, format=format)  /map.py, in __init__()
      42: layer = MapLayer(layer_id, layer_cfg, me, layerCache)  /maplayer.py, in __init__()
      35: self.source = handle_layer_source(self.options, self.cache)  /layersource/__init__.py, in handle_layer_source()
      32: src = ShapefileLayer(src)  /layersource/shplayer.py, in __init__()
      37: if srs.ImportFromWkt(prj_text):  /usr/lib/python2.7/site-packages/osgeo/osr.py, in ImportFromWkt()
      1108: return _osr.SpatialReference_ImportFromWkt(self, *args)
    not a string%
    
    opened by zesterer 0
  • Suggested replacement, mapshaper, is a Node package instead of a Python package…?

    Suggested replacement, mapshaper, is a Node package instead of a Python package…?

    It looks like it's intended for people writing programs using Node, but I'm using Python (as is, presumably, just about everybody who used Kartograph.py). So how do I install and use it? I tried doing some Google searches but found nothing helpful.

    opened by pointyointment 1
  • futurize --stage1: first stage of Py2/3 compatibility

    futurize --stage1: first stage of Py2/3 compatibility

    Hi there,

    This project looks interesting! Here is an initial patch to take the code towards Py2/3 compatibility. The changes should be uncontroversial and easy to apply. The code runs on Py2 as before, but with more up-to-date code idioms.

    This patch doesn't grant full Py3 compatibility yet but takes it in the right direction, so that later patches will be shorter and easier to review.

    Please let me know if you have any questions!

    opened by edschofield 0
Releases(0.6.8)
Debugging, monitoring and visualization for Python Machine Learning and Data Science

Welcome to TensorWatch TensorWatch is a debugging and visualization tool designed for data science, deep learning and reinforcement learning from Micr

Microsoft 3.3k Dec 27, 2022
ipyvizzu - Jupyter notebook integration of Vizzu

ipyvizzu - Jupyter notebook integration of Vizzu. Tutorial · Examples · Repository About The Project ipyvizzu is the Jupyter Notebook integration of V

Vizzu 729 Jan 08, 2023
a plottling library for python, based on D3

Hello August 2013 Hello! Maybe you're looking for a nice Python interface to build interactive, javascript based plots that look as nice as all those

Mike Dewar 1.4k Dec 28, 2022
Visualise Ansible execution time across playbooks, tasks, and hosts.

ansible-trace Visualise where time is spent in your Ansible playbooks: what tasks, and what hosts, so you can find where to optimise and decrease play

Mark Hansen 81 Dec 15, 2022
A tool to plot and execute Rossmos's Formula, that helps to catch serial criminals using mathematics

Rossmo Plotter A tool to plot and execute Rossmos's Formula using python, that helps to catch serial criminals using mathematics Author: Amlan Saha Ku

Amlan Saha Kundu 3 Aug 29, 2022
Automatization of BoxPlot graph usin Python MatPlotLib and Excel

BoxPlotGraphAutomation Automatization of BoxPlot graph usin Python / Excel. This file is an automation of BoxPlot-Graph using python graph library mat

EricAugustin 1 Feb 07, 2022
ecoglib: visualization and statistics for high density microecog signals

ecoglib: visualization and statistics for high density microecog signals This library contains high-level analysis tools for "topos" and "chronos" asp

1 Nov 17, 2021
Create charts with Python in a very similar way to creating charts using Chart.js

Create charts with Python in a very similar way to creating charts using Chart.js. The charts created are fully configurable, interactive and modular and are displayed directly in the output of the t

Nicolas H 68 Dec 08, 2022
Automatically visualize your pandas dataframe via a single print! 📊 💡

A Python API for Intelligent Visual Discovery Lux is a Python library that facilitate fast and easy data exploration by automating the visualization a

Lux 4.3k Dec 28, 2022
Generate "Jupiter" plots for circular genomes

jupiter Generate "Jupiter" plots for circular genomes Description Python scripts to generate plots from ViennaRNA output. Written in "pidgin" python w

Robert Edgar 2 Nov 29, 2021
又一个云探针

ServerStatus-Murasame 感谢ServerStatus-Hotaru,又一个云探针诞生了(大雾 本项目在ServerStatus-Hotaru的基础上使用fastapi重构了服务端,部分修改了客户端与前端 项目还在非常原始的阶段,可能存在严重的问题 演示站:https://stat

6 Oct 19, 2021
View part of your screen in grayscale or simulated color vision deficiency.

monolens View part of your screen in grayscale or filtered to simulate color vision deficiency. Watch the demo on YouTube. Install with pip install mo

Hans Dembinski 31 Oct 11, 2022
PyPassword is a simple follow up to PyPassphrase

PyPassword PyPassword is a simple follow up to PyPassphrase. After finishing that project it occured to me that while some may wish to use that option

Scotty 2 Jan 22, 2022
HiPlot makes understanding high dimensional data easy

HiPlot - High dimensional Interactive Plotting HiPlot is a lightweight interactive visualization tool to help AI researchers discover correlations and

Facebook Research 2.4k Jan 04, 2023
The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualizing NFT data from OpenSea, using PostgreSQL and TimescaleDB.

Timescale NFT Starter Kit The Timescale NFT Starter Kit is a step-by-step guide to get up and running with collecting, storing, analyzing and visualiz

Timescale 102 Dec 24, 2022
Small U-Net for vehicle detection

Small U-Net for vehicle detection Vivek Yadav, PhD Overview In this repository , we will go over using U-net for detecting vehicles in a video stream

Vivek Yadav 91 Nov 03, 2022
Political elections, appointment, analysis and visualization in Python

Political elections, appointment, analysis and visualization in Python poli-sci-kit is a Python package for political science appointment and election

Andrew Tavis McAllister 9 Dec 01, 2022
:art: Diagram as Code for prototyping cloud system architectures

Diagrams Diagram as Code. Diagrams lets you draw the cloud system architecture in Python code. It was born for prototyping a new system architecture d

MinJae Kwon 27.5k Dec 30, 2022
A little word cloud generator in Python

Linux macOS Windows PyPI word_cloud A little word cloud generator in Python. Read more about it on the blog post or the website. The code is tested ag

Andreas Mueller 9.2k Dec 30, 2022
Wikipedia WordCloud App generate Wikipedia word cloud art created using python's streamlit, matplotlib, wikipedia and wordcloud packages

Wikipedia WordCloud App Wikipedia WordCloud App generate Wikipedia word cloud art created using python's streamlit, matplotlib, wikipedia and wordclou

Siva Prakash 5 Jan 02, 2022