kaartmaker


Namekaartmaker JSON
Version 0.1.4 PyPI version JSON
download
home_pageNone
Summaryworld map making tool based on votes from locations such as the UN
upload_time2024-05-03 14:32:24
maintainerNone
docs_urlNone
authorJesse Hitch
requires_python<4.0,>=3.12
licenseAGPL-3.0-or-later
keywords geopandas maps mapmaking kaartmaker un
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Kaartmaker
<a href="https://github.com/small-hack/kaartmaker/releases">
  <img src="https://img.shields.io/github/v/release/small-hack/kaartmaker?style=plastic&labelColor=484848&color=3CA324&logo=GitHub&logoColor=white">
</a>

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

```bash
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](./examples/world_UNGA_on_Ceasefire_in_Ukraine.png)

```bash
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](./examples/world_UNGA_on_Ceasefire_in_Gaza.png)

```bash
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](./examples/europe_UNGA_on_Ceasefire_in_Gaza.png)

```bash
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](./examples/europe_UNGA_on_Ceasefire_in_Ukraine.png)

If you'd like to see more examples, please check them out [here](./examples/README.md).


* [Features](#features)
* [Installation](#installation)
    * [Prereqs](#prereqs)
    * [pipx (recommended for end users)](#install-with-pipx-recommended-for-end-users)
    * [pip (not recommended))](#install-with-pip)
    * [poetry (recommended for development)](#install-with-poetry-recommended-for-development)
* [How To](#how-to)
    * [Donwload your geojson data](#donwload-your-geojson-data)
    * [Using a comma separated list (CSV) file](#using-a-comma-separated-list-csv-file)
* [status](#status)


## 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](https://davidmathlogic.com/colorblind) 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
- Python 3.12 or higher
- [pip], [pipx], or [poetry]

### Install with pipx (recommended for end users)

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

```bash
pipx install kaartmaker
```

### Install with pip
This will break your system packages on Debian.

```bash
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:

```bash
# install kaartmaker
poetry install

# open a virtual env and then you can run kaartmaker
poetry shell
```

## How To

```bash
kaartmaker --help
```
![SVG showing the full help text when you run kaartmaker --help](./examples/help_text.svg)


### 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](./download_geojson.sh) or [download_geojson.py](./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 :

```csv
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!


<!--- ref links -->
[pipx]: https://github.com/pypa/pipx "pipx is a python installer that uses virtual environments"
[pip]: https://pip.pypa.io/en/stable/installation/ "default installer for python"
[poetry]: https://python-poetry.org/docs/#installation "development tool for python installations in virtual envs"

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kaartmaker",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.12",
    "maintainer_email": null,
    "keywords": "geopandas, maps, mapmaking, kaartmaker, UN",
    "author": "Jesse Hitch",
    "author_email": "jessebot@linux.com",
    "download_url": "https://files.pythonhosted.org/packages/c0/35/63545c368e02a835e8712b29518b243c3a8dcda480823f6c76b0ee2b9bbf/kaartmaker-0.1.4.tar.gz",
    "platform": null,
    "description": "# Kaartmaker\n<a href=\"https://github.com/small-hack/kaartmaker/releases\">\n  <img src=\"https://img.shields.io/github/v/release/small-hack/kaartmaker?style=plastic&labelColor=484848&color=3CA324&logo=GitHub&logoColor=white\">\n</a>\n\nMake world and regional labeled maps based on voting. Most commonly used for representing UN General Assembly votes.\n\n```bash\nkaartmaker -C ./kaartmaker/datasets/UN_general_assembly/russia_ceasefire/world_ukraine_votes.csv -t \"UNGA vote on ceasefire in Ukraine\" -s \"gadebate.un.org\"\n```\n![Map of world Ukraine votes](./examples/world_UNGA_on_Ceasefire_in_Ukraine.png)\n\n```bash\nkaartmaker -C ./kaartmaker/datasets/UN_general_assembly/israel_ceasefire/world_palestine_votes.csv -t \"UNGA on Ceasefire in Gaza\" -s \"gadebate.un.org\" -r world\n```\n![Map of world Gaza votes](./examples/world_UNGA_on_Ceasefire_in_Gaza.png)\n\n```bash\nkaartmaker -C ./kaartmaker/datasets/UN_general_assembly/israel_ceasefire/world_palestine_votes.csv -t \"UNGA on Ceasefire in Gaza\" -s \"gadebate.un.org\" -r europe\n```\n![Map of Europe Gaza votes](./examples/europe_UNGA_on_Ceasefire_in_Gaza.png)\n\n```bash\nkaartmaker -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\n```\n\n![Map of Europe Ukraine votes](./examples/europe_UNGA_on_Ceasefire_in_Ukraine.png)\n\nIf you'd like to see more examples, please check them out [here](./examples/README.md).\n\n\n* [Features](#features)\n* [Installation](#installation)\n    * [Prereqs](#prereqs)\n    * [pipx (recommended for end users)](#install-with-pipx-recommended-for-end-users)\n    * [pip (not recommended))](#install-with-pip)\n    * [poetry (recommended for development)](#install-with-poetry-recommended-for-development)\n* [How To](#how-to)\n    * [Donwload your geojson data](#donwload-your-geojson-data)\n    * [Using a comma separated list (CSV) file](#using-a-comma-separated-list-csv-file)\n* [status](#status)\n\n\n## Features\n\n- Use your own csv datasets to generate maps for the world, or specific regions\n\n- Generate geojson files for specific regions with your vote data :)\n\n- Colors are colorblind friendly, selected from [here](https://davidmathlogic.com/colorblind) can also be reversed for vote types\n\n- 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\n\n\n## Installation\n\n#### Prereqs\n- Python 3.12 or higher\n- [pip], [pipx], or [poetry]\n\n### Install with pipx (recommended for end users)\n\nWe recommend using [pipx] to install kaartmaker into an isolated python environment.\n\n```bash\npipx install kaartmaker\n```\n\n### Install with pip\nThis will break your system packages on Debian.\n\n```bash\npip install kaartmaker --break-system-packages\n```\n\n### Install with poetry (recommended for development)\n\nClone the repo and cd into the root directory of the repo, then run:\n\n```bash\n# install kaartmaker\npoetry install\n\n# open a virtual env and then you can run kaartmaker\npoetry shell\n```\n\n## How To\n\n```bash\nkaartmaker --help\n```\n![SVG showing the full help text when you run kaartmaker --help](./examples/help_text.svg)\n\n\n### Donwload your geojson data\n\nMaps (sovereignty, units, subunits, and disputed areas) can be downloaded from:\nhttps://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-0-details/\n\nYou can also download geojson files with the [download_geojson.sh](./download_geojson.sh) or [download_geojson.py](./download_geojson.py) scripts in this repo.\n\n\n### Using a comma separated list (CSV) file\n\nTo 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 :\n\n```csv\nNAME_EN,VOTE\nBrazil,IN FAVOR\nCzechia,AGAINST\nGermany,ABSTENTION\n```\n\n\n# status\nMostly stable, but happy to take a look at Issues and Pull Requests :)\n\nPlease star the repo if you find it interesting!\n\n\n<!--- ref links -->\n[pipx]: https://github.com/pypa/pipx \"pipx is a python installer that uses virtual environments\"\n[pip]: https://pip.pypa.io/en/stable/installation/ \"default installer for python\"\n[poetry]: https://python-poetry.org/docs/#installation \"development tool for python installations in virtual envs\"\n",
    "bugtrack_url": null,
    "license": "AGPL-3.0-or-later",
    "summary": "world map making tool based on votes from locations such as the UN",
    "version": "0.1.4",
    "project_urls": {
        "Bug Tracker": "http://github.com/small-hack/kaartmaker/issues"
    },
    "split_keywords": [
        "geopandas",
        " maps",
        " mapmaking",
        " kaartmaker",
        " un"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dd6d18c022ab8f8640ee4a0e39c9bea9347e389a1b6b877f0bcaa00d4a011c6f",
                "md5": "777ccc7c409c9a11ee0d49758a2a4180",
                "sha256": "d4cd5cacfadd5ace29b9789165d3aa24fbf9a0a779e4d06904e363f2483422b6"
            },
            "downloads": -1,
            "filename": "kaartmaker-0.1.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "777ccc7c409c9a11ee0d49758a2a4180",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.12",
            "size": 15914751,
            "upload_time": "2024-05-03T14:32:11",
            "upload_time_iso_8601": "2024-05-03T14:32:11.072856Z",
            "url": "https://files.pythonhosted.org/packages/dd/6d/18c022ab8f8640ee4a0e39c9bea9347e389a1b6b877f0bcaa00d4a011c6f/kaartmaker-0.1.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c03563545c368e02a835e8712b29518b243c3a8dcda480823f6c76b0ee2b9bbf",
                "md5": "5595541ff2817ac9e9ada7045c4a7546",
                "sha256": "e82c8bcfa2cfd3ccd5d47a05c200aee054590738f1f5042844efd242bb6e530a"
            },
            "downloads": -1,
            "filename": "kaartmaker-0.1.4.tar.gz",
            "has_sig": false,
            "md5_digest": "5595541ff2817ac9e9ada7045c4a7546",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.12",
            "size": 15838219,
            "upload_time": "2024-05-03T14:32:24",
            "upload_time_iso_8601": "2024-05-03T14:32:24.148153Z",
            "url": "https://files.pythonhosted.org/packages/c0/35/63545c368e02a835e8712b29518b243c3a8dcda480823f6c76b0ee2b9bbf/kaartmaker-0.1.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-03 14:32:24",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "small-hack",
    "github_project": "kaartmaker",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "kaartmaker"
}
        
Elapsed time: 0.52641s