Har du använt Geonames.org? Om inte så är det en global samling med platsnamn och postnummer i ett enkelt textformat publicerat under Creative Commons licens (CC-BY).
För det första så hämta hem zip-filen för Sverige. Packa upp den på lämplig plats och öppna båda filerna i en texteditor.
I readme.txt hittar man information om licensen och metadata om innehållet i den andra filen. SE.txt innehåller alla data i en tab-separerad fil som tyvärr saknar rubriker, vilket är lätt ordnat.
Skapa en ny rad överst i SE.txt och skriv in de rubriker som du hittar i readme.txt med ett tab mellan varje.
geonameid name asciiname altnames latitude longitude feat_class feat_code cntry_code cc2 adm1_code adm2_code adm3_code adm4_code population elevation dem timezone mod_date
Jag har ersatt mellanslag i alla namn med understreck och sedan har jag även kortat ned de långa namnen så att de inte klipps när jag skapar shapefiler i QGIS senare (shape kan bara ha tio tecken i fältnamnen).
I QGIS används ”Lägg till separerad text lager” knappen (en knapp med ett kommatecken och ett litet grönt plus). I dialogen (bilden ovan) så anger man att det är ”tab” som är separerare och att den första raden innehåller fältnamn, sedan bör dialogen känna igen fältnamnen ”longitude” och ”latitude” som giltiga X- och Y-fält, annars får man ange detta manuellt. Sedan är det bara att klicka OK!
I mitt QGIS så får jag några Python-fel, men det verkar som att data importeras i alla fall (bild nedan), så jag bryr mig inte så mycket just nu. Data antas helt korrekt vara i WGS-84, och om så inte är fallet så kan du ändra det till detta i lageregenskaperna.
I bilden ovan har jag ändrat projektion till SWEREF99TM. Här går det även att se alla de olika objektkoder (Feature Code) som finns här. Det är väldigt många och få är särskilt tydliga när det gäller att identifiera dem. Det går naturligtvis att gissa och prova tills man hittar lämpliga värden, men det finns ett bättre sätt.
På geonames.org så kan man hämta hem en kodfil på Svenska som redogör för vad de olika koderna betyder. Här kan man enkelt slå upp de olika koderna och få en svensk förklaring, men varför skall man vara så manuell?
Även denna fil är en tab-separerad textfil (högerklicka på länken och ”spara som”) utan rubriker så börja med att lägga till en rad överst med följande rubriker:
Class.Code Swe_Name Details
Läs sedan in filen som en ny ”separerad text lager”, fast utan geometri denna gång.
Lägg även till punkt ( . ) som ”andra separerare” så delas ”Class” och ”Code” i olika attribut.
I lageregenskaperna för punktlagret så skapar man sedan en sammanslagning med textfilen baserad på ”Code” och ”feat_code”. Sedan är det bara att välja ”Swe_Name” som attribut att klassificera symbolerna efter.
När man tittar närmare på alla punkter så ser man att många är inordnade i ett regelbundet mönster. Detta är ofta stora geografiska objekt utan exakt position som exempelvis sjöar. Om man vill filtrera bort dessa regelbundna punkter och kanske hantera dem i ett lager för sig så är det heller inte så svårt. Först måste lagret sparas som en geodatafil i exempelvis ESRI shape (höger klicka välj spara som). Skapa sedan en lagerkopia (högerklicka och välj ”Duplicera”) av shapelagret, om du vill använda flera olika urval i olika lager. För att filtrera på ”mönster” så behöver man skapa ett nytt attribut, eftersom objekturval i lageregenskaperna är lite tröga när det gäller att omvandla tal till text.
I bilden ovan har jag varit lite kreativ när det gäller att testa om en punkt är placerad på en regelbunden punkt eller inte och detta ger ytterligare ett attribut man kan filtrera på för att ”slå isär” datamängden i lämpliga bitar att jobba vidare med.
Bläddra bland attributen så hittar du säkert dina favoriter som du kan filtrera ut i en ny lagerkopia med ett objekturval.
Lycka till!