VSJF-Refugees Migration

Mapping the fates of Jewish refugees in the 20th century.

📂 Demo

We developed an interactive visualization of the migration flow of (mostly jewish) refugees migrating to or through Switzerland between 1898-1975. We used the API of google maps to show the movement of about 20'000 refugees situated in 535 locations in Switzerland.

One of the major steps in the development of the visualization was to clean the data, as the migration route is given in an unstructured way. Further, we had to overcame technical challenges such as moving thousands of marks on a map all at once.

The journey of a refugee starts with the place of birth and continues with the place from where Switzerland was entered (if known). Then a series of stays within Switzerland is given. On average a refugee visited 1 to 2 camps or homes. Finally, the refugee leaves Switzerland from a designated place to a destination abroad. Due to missing information some of the dates had to be estimated, especially for the date of leave where only 60% have a date entry.

The movements of all refugees can be traced over time in the period of 1898-1975 (based on the entry date). The residences in Switzerland are of different types and range from poor conditions as in prison camps to good conditions as in recovery camps. We introduced a color code to display different groups of camps and homes: imprisoned (red), interned (orange), labour (brown), medical (green), minors (blue), general (grey), unknown (white). As additional information, to give the dots on the map a face, we researched famous people who stayed in Switzerland in the same time period. Further, historical information were included to connect the movements of refugees to historical events.

Data

Code

Team

Mapping the fates of Jewish refugees in the 20th century

Technical details

Setup

To work properly, the project must be hosted on a web server. The easiest way of doing this is to run server.py, which will then serve the project at http://localhost:8000/.

Source Data

The main data is stored in data.tsv, as a record of places and times. In addition, colorcodes.json defines the colors used for different kinds of places, eg hospitals are green and KZs black. importantevents.tsv lists historically relevant events. famouspeople.json lists the fates of some individual people.

Derived Data

Locations are geocoded using Google APIs, and cached in geocodes.tsv to prevent hitting rate limits. To re-code data.tsv, invoke python geocode.py code data.tsv. To see which geocodes are missing, invoke python geocode.py list data.tsv. In practice, some locations need to be geocoded by hand due to spelling errors or changes in place names.

The primary data, geocoded locations and color codes are then processed by clusters.py into clusters.json, a large data file that drives the display of information.

This content is a preview from an external site.
 

Event finish

Added important events file. (@bellisk)

Added links, fixed scroll bug. (@Zarkonnen)

Wiki link for events. (@Zarkonnen)

Fixed css (@Zarkonnen)

Support for displaying historical events. (@Zarkonnen)

KZ markers (@Zarkonnen)

Geocode doubtful locations. (@bellisk)

Wiki links for famous people. (@Zarkonnen)

Infoboxes for famous people. (@Zarkonnen)

Famous people move. (@Zarkonnen)

Geocoded famous people. (@Zarkonnen)

JSON info for famous people and also icons and images. (@Zarkonnen)

Legend in english (@Zarkonnen)

Legend, still missing official names. (@Zarkonnen)

Colours of clusters are kept up to date on the basis of who is there. (@Zarkonnen)

Info boxes (@Zarkonnen)

Start