If your data are in tabular (i.e., not spatial) format, you may be able to convert them to spatial format via a GIS join operation. A join links your table (e.g., population by country) to a GIS layer (e.g., country boundaries of the world) so your data can be displayed on a map; to do this, you’ll need a similar field in the table and layer, such as U.S. state abbreviations or global ISO country codes. Here is how to do a join in ArcGIS and QGIS.
ArcGIS
- First, right-click on the layer (in the display pane on the left) and navigate to Joins & Relates > Join…
- Then select Join Attributes from a Table.
- Input the following parameters in the dropdown fields:
- The relevant field in the layer (the one that has the same data as the table field)
- The table you want to join to the layer; in Arc this can be in .csv or .xls(x) format
- The relevant field in the table (the one that has the same data as the layer field/the one you chose in step 1)
- In the Join Options pulldown, you can keep all records if you want all records to stay in the attribute table regardless of whether they have a match between the data layer and the table, or keep only matching records if you want to discard records that do not have a match.
Now the layer’s attribute table and the new tabular data will be joined in the layer, so that your layer has new attributes. In the Properties menu under Symbology, the user can select the joined fields from Value Dropdown to map categories or quantities. If the joined fields are all <null> in the attribute table there was an issue with the attributes in the two join fields not matching and should be checked.
QGIS
- Add your vector layer to which you intend to join tabular data.
- Then add your tabular data in Windows .csv format, using the Add Delimited Text Layer button, and choosing the No Geometry option. Make sure your fieldnames etc. look good before continuing.
- Next, right-click on your target vector layer (in the display pane on the left) and click Properties.
- Click on the Join tab and click the green plus button. You should see the filename of your tabular data at top; if not, select it. Then in the dropdown fields select:
- The relevant field in the tabular data (the one that has the same data as the layer field)
- The relevant field in the vector layer (this must match the tabular data field above)
- The other settings are optional
Now the two tables will be joined to the layer. If the joined fields are all <null> in the attribute table there was an issue with the attributes in the two join fields not matching.
Joining U.S. Census data
If you’d like to map the most recent (2010) U.S. Census data, the U.S. Census Bureau provides shapefiles and data tables separately for a number of spatial scales and demographic data, so you’ll have to join the polygons describing census areas with their associated data. The following procedure gives the basic overview of how to access U.S. Census shapefiles and data tables, and what to do with them.
Before you start, decide what spatial scale you will need for your map; here are some Wikipedia articles on common US Census geographies. You will need to download shapefiles and data tables for exactly the same year and same scale so that they join properly. For example, a shapefile for 2010 block groups and a data table for 2000 census tracts will not join or display properly!
- First, go to the TIGER/Line site and download the shapefiles for the area you are mapping. Add the shapefiles to an existing or new map.
- Now go to the American FactFinder and download the table data. Specify the year, geography, and demographic information, and click the download link.
- Follow the procedure on pages 11-17 of this tutorial from the Census Bureau for formatting your table data.
- Perform a table join to join your shapefile to your table data as seen above.
- Change your symbology and display accordingly.