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)
Automatic data visualization in atom with the nteract data-explorer

Data Explorer Interactively explore your data directly in atom with hydrogen! The nteract data-explorer provides automatic data visualization, so you

Ben Russert 65 Dec 01, 2022
CLAHE Contrast Limited Adaptive Histogram Equalization

A simple code to process images using contrast limited adaptive histogram equalization. Image processing is becoming a major part of data processig.

Happy N. Monday 4 May 18, 2022
Simple python implementation with matplotlib to manually fit MIST isochrones to Gaia DR2 color-magnitude diagrams

Simple python implementation with matplotlib to manually fit MIST isochrones to Gaia DR2 color-magnitude diagrams

Karl Jaehnig 7 Oct 22, 2022
Statistical data visualization using matplotlib

seaborn: statistical data visualization Seaborn is a Python visualization library based on matplotlib. It provides a high-level interface for drawing

Michael Waskom 10.2k Dec 30, 2022
Visualize the training curve from the *.csv file (tensorboard format).

Training-Curve-Vis Visualize the training curve from the *.csv file (tensorboard format). Feature Custom labels Curve smoothing Support for multiple c

Luckky 7 Feb 23, 2022
Boltzmann visualization - Visualize the Boltzmann distribution for simple quantum models of molecular motion

Boltzmann visualization - Visualize the Boltzmann distribution for simple quantum models of molecular motion

1 Jan 22, 2022
Yata is a fast, simple and easy Data Visulaization tool, running on python dash

Yata is a fast, simple and easy Data Visulaization tool, running on python dash. The main goal of Yata is to provide a easy way for persons with little programming knowledge to visualize their data e

Cybercreek 3 Jun 28, 2021
simple tool to paint axis x and y

simple tool to paint axis x and y

G705 1 Oct 21, 2021
Flexitext is a Python library that makes it easier to draw text with multiple styles in Matplotlib

Flexitext is a Python library that makes it easier to draw text with multiple styles in Matplotlib

Tomás Capretto 93 Dec 28, 2022
Create artistic visualisations with your exercise data (Python version)

strava_py Create artistic visualisations with your exercise data (Python version). This is a port of the R strava package to Python. Examples Facets A

Marcus Volz 53 Dec 28, 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
Gesture controlled media player

Media Player Gesture Control Gesture controller for media player with MediaPipe, VLC and OpenCV. Contents About Setup About A tool for using gestures

Atharva Joshi 2 Dec 22, 2021
Voilà, install macOS on ANY Computer! This is really and magic easiest way!

OSX-PROXMOX - Run macOS on ANY Computer - AMD & Intel Install Proxmox VE v7.02 - Next, Next & Finish (NNF). Open Proxmox Web Console - Datacenter N

Gabriel Luchina 654 Jan 09, 2023
Exploratory analysis and data visualization of aircraft accidents and incidents in Brazil.

Exploring aircraft accidents in Brazil Occurrencies with aircraft in Brazil are investigated by the Center for Investigation and Prevention of Aircraf

Augusto Herrmann 5 Dec 14, 2021
Create a table with row explanations, column headers, using matplotlib

Create a table with row explanations, column headers, using matplotlib. Intended usage was a small table containing a custom heatmap.

4 Aug 14, 2022
Visualize your pandas data with one-line code

PandasEcharts 简介 基于pandas和pyecharts的可视化工具 安装 pip 安装 $ pip install pandasecharts 源码安装 $ git clone https://github.com/gamersover/pandasecharts $ cd pand

陈华杰 2 Apr 13, 2022
Fast scatter density plots for Matplotlib

About Plotting millions of points can be slow. Real slow... 😴 So why not use density maps? ⚡ The mpl-scatter-density mini-package provides functional

Thomas Robitaille 473 Dec 12, 2022
Fast visualization of radar_scenes based on oleschum/radar_scenes

RadarScenes Tools About This python package provides fast visualization for the RadarScenes dataset. The Open GL based visualizer is smoother than ole

Henrik Söderlund 2 Dec 09, 2021
Python histogram library - histograms as updateable, fully semantic objects with visualization tools. [P]ython [HYST]ograms.

physt P(i/y)thon h(i/y)stograms. Inspired (and based on) numpy.histogram, but designed for humans(TM) on steroids(TM). The goal is to unify different

Jan Pipek 120 Dec 08, 2022
Smarthome Dashboard with Grafana & InfluxDB

Smarthome Dashboard with Grafana & InfluxDB This is a complete overhaul of my Raspberry Dashboard done with Flask. I switched from sqlite to InfluxDB

6 Oct 20, 2022