För ett tag sedan skrev jag på digital-geography.com om militära utgifter för olika länder och hur man använder QGIS för att visualisera denna typ av data. Nu tänkte jag göra något liknande här.
Data kommer från Stockholm International Peace Research Institute – SIPRI och går att ladda hem fritt (läs licensvilkoren) i xlsx-format.
För att vara användbart i QGIS så funkar inte xlsx och det behöver fixas några saker till för att det skall fungera på ett bra sätt.
Jag tänker använda militära utgifter som procent av BNP (GDP) och målsättningen är att skapa en ”tab” separerad textfil med rubriker och något referensfält. Till att börja med så finns det en hel del icke-numeriska tecken i tabellen som måste bort. Dessa ersätts med ”ingenting” via en enkel ”sök och ersätt” funktion. Ta bort såväl ”. .” som ”xxx”, men även något enstaka ”..”.
Kolumnen Notes behöver jag inte och den innehåller dessutom en massa konstiga tecken så ta bort hela den kolumnen.
Rubriker kan inte börja med en siffra så lägg till ”Y” före varje årtal.
De första fem raderna är onödiga, och även om det inte är nödvändigt att ta bort dem så gör jag det, tillsammans med några kommentarsrader längst ned i tabellen.
För att koppla data till landsplygoner så behövs ett gemensamt attribut. ”Country” skulle fungera om inte stavningen och sättet att skriva ut olika namn skilde sig. Nu går det ju att rätta alla namn, men jag tycker att det finns ett bättre sätt.
Många polygoner har ett attribut för landskod enligt FIPS eller ISO, i det här fallet har jag valt FIPS eftersom mina geodata har detta attribut.
Jag skapar helt enkelt en ny kolumn längst till vänster och infogar dessa FIPS-koder för varje land. Vill du inte göra detta själv så kan du öppna min textfil och markera och kopiera allt samt klistra in det i den översta rutan i den nyss skapade kolumnen. Glöm inte att kontrollera så att alla rader hamnar på rätt ställe. Jag har angett koden ”XX” på några ställen men det är för att dessa inte finns som standard eller saknas på annat sätt.
Det färdiga kalkylarket sparas som ”CSV” och i Libre Office så skall man se till att markera ”redigera filterinställningar” innan man trycker på spara.
Eftersom jag har ”komma” som decimaltecken så väljer jag att använda {Tabb} som fältavgränsare (bild ovan), sedan sparar jag filen med ett klick på OK.
Mitt polygonlager är från 2012 och är hämtat från geocommons.com och innehåller som sagt FIPS-koder för varje land.
I QGIS så ”lägger jag till separerad textfil” med rätt knapp och söker rätt på min csv-fil. Jag ser till att ”Tabb” är inställd som separerare, att första raden är rubriker och att decimaltecknet är ett komma. Dessutom så måste jag ange att filen inte har någon geometri innan det går att importera.
I lageregenskaperna för polygonlagret med länder så lägger jag sedan till en ”Sammanslagning” med textfilen och kontrollerar att sammanslagningen görs på attributet ”FIPS_CNTRY” i båda filerna (förutsatt att du följt instruktionerna tidigare).
Sedan kan man laborera lite med stilar och etiketter och skapa olika lager för olika år, etc.
I bilden ovan så har jag färglagt länderna så att ju mörkare nyans desto större andel av BNP satsar man. Dessutom så skriver jag ut procentsatsen och lägger till ett diagram som illustrerar ändringen över tiden. Den vänstra stapeln representerar 1993, den i mitten 2003 och den högra 2013.
Om man använder samma metod för flera av bladen i kalkyldokumentet så kan man illustrera ytterligare data:
Dollar per Capita (per person)
Dollar totalt (omräknat i 2011 års dollarvärde)
Vem i världen lägger då mest på försvarsutgifter? Det får du faktiskt ta reda på själv genom att följa instruktionerna i detta inlägg. Lycka till!