Skip to main content

world map making tool based on votes from locations such as the UN

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.

Features

  • Use your own csv datasets to generate maps for the world, or specific regions

  • Generate geojson files for specific regions with your vote data :)

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

  • Use sovereignty (default) or subunits to get more granularity on countries e.g. Scotland, North Ireland, Wales, and Isle of Man distinguished from the United Kingdom

Installation

Prereqs

Install with pipx (recommended for end users)

We recommend using pipx to install kaartmaker into an isolated python environment.

pipx install kaartmaker

Install with pip

This will break your system packages on Debian.

pip install kaartmaker --break-system-packages

Install with poetry (recommended for development)

Clone the repo and cd into the root directory of the repo, then run:

# install kaartmaker
poetry install

# open a virtual env and then you can run kaartmaker
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 or download_geojson.py scripts 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 :)

Please star the repo if you find it interesting!

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.6.tar.gz (15.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kaartmaker-0.1.6-py3-none-any.whl (15.9 MB view details)

Uploaded Python 3

File details

Details for the file kaartmaker-0.1.6.tar.gz.

File metadata

  • Download URL: kaartmaker-0.1.6.tar.gz
  • Upload date:
  • Size: 15.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.1 Linux/6.11.0-1018-azure

File hashes

Hashes for kaartmaker-0.1.6.tar.gz
Algorithm Hash digest
SHA256 58e3a2049c170abdf6b1940a14c44f02e4faf4746857698f8068c1e25cc63551
MD5 a224a42a41cc1899650332d3d7dee9f4
BLAKE2b-256 1030e2faef869136b6a85bbc26a288428966d913d6673fa11e43442fb2bccd16

See more details on using hashes here.

File details

Details for the file kaartmaker-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: kaartmaker-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 15.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.1 Linux/6.11.0-1018-azure

File hashes

Hashes for kaartmaker-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6f879d7ff7364a3c8572aa85b6d3256f4e79f028f7c68c130a7be7c9dd6bb1c3
MD5 1f51fe98678427ddafb1bca7864eb4a5
BLAKE2b-256 7a7d7dcc42d63a0a21ba0ac7344e4e6a0bfaebc764732276c83afc26f2d8fca8

See more details on using hashes here.

Supported by

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