Session No.

Welcome to Mapic app

Quick Start

If you want to see some maps, go to the Intro tab, select a country from the filters and start crafting a map in the Maps tab

Data Preparation

To start preparing raw data, visit the Coords tab. You can type or copy and paste directly from an excel sheet.

Save your ID

Do not forget to save your session number. It is shown on the top-right corner of the app. If you are preparing data and the session breaks, this number can help you to recover the data collected up to the break.

Instructions and FAQ

For more info and FAQ, go to the Instructions tab.





Search Coords



Missing Entries

Add missing coords



This section contains instructions and FAQ for the usage of the app.


The app is divided into 3 main sections that can be explored using the tabs at the top bar. Each of them has a specific task in the functioning of the app.

The sections are:

  • Intro: This is the main view of the data and works as an introduction to the app.
  • Coords: In charge of retrieval of the coordinates needed to make the maps.
  • Maps: The section that actually creates the maps.


This section can be used only when there is already existent data. There are 2 sources of data that can be called here. The options have to be selected in the “Source” section, under “Select source”.

Data Base

Selects data from the main database. This means, that that has already been cleaned, contains all the details to make the maps (lat and lon) and it is already stored in the central database.

If you select this source, you can also use the filter “Filter by Country” to select data for a particular country.

The current version of Mapic accepts only maps per country. Maps of several countries might be introduced later.


Data from a working session can be called using the “Session No.”, which can be found at the top-right corner of the app.

If you are working with your raw data under the Coords tab, you can recover part of your session using the session No. (see details below). Enter your Session ID, click “Load Session”, in the drop down menu for Source select “Session” and finally click “Load Data”. Your data should appear on the screen. If you leave the section “Session ID” empty, it will load the data from the current Session No.

Check your data in the screen, if something is missing or you need to delete rows, go to the tab Coords and work it there. Come back to Intro, load it again and it should update. When your data is ready you can click “Send Data Session to DB” to save it in the main database.

Working data

Whatever data is shown in the Intro tab, no matter if it is “Session” or “Data Base” data, is considered “Working Data” and it will be used to create maps (see details below). To verify this, load some data in the Intro tab and go to the Maps tab, you should see exactly the same data there.


This is a complex section entitled to obtain the geographical coordinates to create the maps. In order to map cities, first we need to know the coordinates of each particular city in the world. There are a few R packages that include such info, but only for some particular countries. Since the present app intends to map any city on any region in the world, we include a search engine that should work on any region or country in the world.

It is very important for this section to save you Session Number. You can find it in the top-right of the page, it looks like this: TBL_20240312_105932_883. You can write it down on a piece of paper or copy it somewhere in your computer. When you click “Search Coords” whatever the engine finds is stored under that number. Thus, if you lost the internet connection or the app breaks in the middle of a search, you can come back to the app later, enter your number in the Intro tab (see instruction above) and recover part of it. If you want to work with 2 different countries, we recommend using one session No. per country.

The first table is a interactive table, in the style of Excel or Google Sheets. You can type the info there, or copy and paste it from a sheet. You can copy all your info there, however, big amounts of data might slow down the app. We recommend working in terms of hundreds. Thus, if you have thousands of entries, you can enter the first 900 first, work with that, and then move forward with the following 900. And so on. You can interact with the table using right click. You can clear it up completely with the button “Clear Table”.

It requests the following fields:

  • id A unique identification number per each row. If id’s are repeated, they will be ignored.
  • city a proper name of the city. It accepts different languages, although it is preferred to use English. It does not accept complex names of city districts, for instance. As an example, “Prague” and “Praha” both will be found by the engine. On the other hand “Prague district 3” might not be found.
  • country The country. The preferred method is the 2-digit or 3-digit code of the country. Country names might or might not be found.
  • state and region If you have a deeper granularity of information, you can provide the state and region. State is equivalent of states or region in many European countries. Region is a wider area than state, like “County” in the US.
  • year_start The year in which the entry was registered. It is for dynamic maps. If you leave this empty, the app will generate a static map.
  • year_end Optional, if a registry was closed or destroyed. If leave empty, the app assumes that the registry is still active today.

Once the info is complete, you can proceed by clicking “Search Coords”. Don’t forget to save you Session No. The results of the search will be shown in the right side, section “Log Info”. It will basically log what was found and what was not. It might be of help, however it is not strictly necessary to use it, the sections below can be more useful. However, the reason for it to exists is that the search engine uses open street map so, whatever you find there should appear under our search engine. Here you have the option to correct misspelled words and other errors.

The next section “Results” shows a table with the data that was found and is already saved under the session no. If you are trying to recover an old session you have to click “Load From Session ID” to show it up. In this section you have the option of deleting rows. Select all the rows you want to delete and click “Delete Selected Rows”. No other editing methods are allowed here, only in the previous section.

It follows the section Missing Entries. This able is for display only and it can be used to see the mistakes. You can go back to the interactive table and correct your mistakes there and search again. It can be a wrong region or state, misspelled city name, etc. For missing entries, we recommend you to go to open street map first and see if your entry exists there, or if it is with a different spelling of the city or state name, etc.

If everything else fails, you still have the option of adding the coords manually in the last section “Add missing coords”. It is again an interactive table where you can type in the data. Here is extremely important that the info that you provide matches with your raw data, specially the id. The additional fields here are lon, lat and osm_name. The first two are for longitude and latitude respectively. The last one is the name how the city is register under open street map, therefore you can leave this space empty or add your own comment for it, for example, the source where the coords were found. Click “Add Data” to add the data that you have here. You should see how the other 2 tables above update.

When you are done working with your raw data, you can go back to the Intro tab and load your session data, either by leaving the field “Session ID” empty if you want to load the current session, or providing your ID here. Follow the instructions above to load your data for sending to the database or use it for maps.


As mentioned above, whatever data is shown in the Intro tab will be shown also in the Maps tab and thus, it will be used to create maps. The data for maps must contain unique “id”, and “city” “lat” and “lon” fields filled in.

When you see your data in the Maps tab, you can click “Render Map” to start creating the map. The features for map creation are:

  • Year Slide the year bar to select the year to be shown in the map.
  • Lat and Lon sliders. You can slide to zoom in and out the map, depending on “longitude” (vertical slider) and “longitude” (horizontal slider).
  • You can also zoom in and out with the mouse. Draw a box in a region and then double click inside the box. The map will zoom in to that region. Double click anywhere in the map without drawing a box and the map will return to a worldwide view.
  • Ideal zooming. It is recommended to use first the box-drawing method for general zooming in, and the the sliders for more precise zooming in.
  • Labels. Below the map, you can type in the labels to be shown for the “Total” and the “Year”. For example, you might like to type the same words in your own language.
  • City labels. Click and start typing, or check the drop-down menu. It should include the list of cities that appear in your data. You can select which city names should be shown in the map.
  • Download. Finally, download the map clicking the corresponding button. It will basically download what you see on screen, on a good quality PNG image. Thus, the pixel size is pre-set and you should adapt your map zoom to it. We recommend having a map that is almost twice wider than it is higher for a good rendering. Alternatively, download, check your resulting image and zoom the map in/out with the sliders to adjust. Download again, see the results and repeat until you achieve the desired output.

Suggested workflow

Use existent data to create maps.

  1. Go to Intro and select a country from “Filter by Country”. Click “Load Data”.
  2. Go to Maps, make sure that there is some data displayed there and click “Render Map”.
  3. adjust the zoom following the instructions above.
  4. Select the yer to be mapped, the city names to be displayed, and type on the words that you want to show for “Total” and “Year”.
  5. click “Download”. Check the results of your image. Adjust the zoom of the map and download again. See the details above.
  6. When you have the desired quality, select another year and Download.
  7. Repeat the step above for each year that you need to download.

Start from raw data

  1. Make sure that you have at least the list of cities with unique id, the 2-letter code of the country, and the year of registration and closing, if it applies for dynamic maps.
  2. Copy your data from a sheet to the interactive table at the top of the Coords section.
  3. Click “Search Coords”.
  4. Delete undesirable entries in the table “Results”. See your mistakes in the table “Missing Entries”. Correct your data in the interactive table. Click again “Search Coords”.
  5. You can search the coords somewhere else for cities not found, and add them in the “Add missing coords” section at the bottom of the Coords tab. See instructions above for more details.
  6. Once you have all your data complete, go to the tab Intro and in source select “Session”.
  7. If you have everything under the current session, leave “Session ID” empty, otherwise enter your session id number there. See details above.
  8. Click “Load Session” and then “Load Data”. The data you have found under Coords tab should now appear in the Intro and Maps sections.
  9. Go to Maps tab and follow the steps 2 to 7 from the section above (“Use existent data to create maps”).


Can I create maps of several countries?

The current version accepts maps of single country. But we are working on a solution to include maps of several countries all together.

Can I create a map of a region within a country?

The only solution to that would be to zoom in to that particular region and export the map there. Mapping regions would require a lot of data with the limits of the regions of each country, therefore it is not planned to be included in the app. If you really have the need we recommend you to use R for that. Get a package that contains the regional borders for your country and go to mapic to use the same package that is app is built on top of.