Skip to main content

world map making tool based on votes

Project description

Kaartmaker

Make world and regional labeled maps based on voting. Most commonly used for representing UN General Assembly votes.

kaartmaker -C ./kaartmaker/datasets/UN_general_assembly/russia_ceasefire/world_ukraine_votes.csv -t "UNGA vote on ceasefire in Ukraine" -s "gadebate.un.org"

Map of world Ukraine votes

kaartmaker -C ./kaartmaker/datasets/UN_general_assembly/israel_ceasefire/world_palestine_votes.csv -t "UNGA on Ceasefire in Gaza" -s "gadebate.un.org" -r world

Map of world Gaza votes

kaartmaker -C ./kaartmaker/datasets/UN_general_assembly/israel_ceasefire/world_palestine_votes.csv -t "UNGA on Ceasefire in Gaza" -s "gadebate.un.org" -r europe

Map of Europe Gaza votes

kaartmaker -C ./kaartmaker/datasets/UN_general_assembly/russia_ceasefire/world_ukraine_votes.csv -t "UNGA vote on ceasefire in Ukraine" -s "gadebate.un.org" -r europe

Map of Europe Ukraine votes

If you'd like to see more examples, please check them out here.

Secondary features

  • Generate geojson files for specific regions :)

  • Colors are colorblind friendly, selected from here can also be reversed

Installation

Make sure you have at least Python 3.12 and poetry installed, then you can do:

# install kaartmaker
poetry install
# open a virtual env 
poetry shell

How To

kaartmaker --help

SVG showing the full help text when you run kaartmaker --help

Donwload your geojson data

Maps (sovereignty, units, subunits, and disputed areas) can be downloaded from: https://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-details/

You can also download geojson files with the download_geojson.sh script in this repo.

Using a comma separated list (CSV) file

To use kaartmaker, you'll need to provide a CSV file with columns called NAME_EN and VOTE. Valid votes are YES|NO or AGAINST|ABSTENTION|IN FAVOR Example when documenting :

NAME_EN,VOTE
Brazil,IN FAVOR
Czechia,AGAINST
Germany,ABSTENTION

status

Mostly stable, but happy to take a look at Issues and Pull Requests :)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kaartmaker-0.1.1.tar.gz (15.8 MB view hashes)

Uploaded Source

Built Distribution

kaartmaker-0.1.1-py3-none-any.whl (15.9 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page