2017-08-15 3 views
2

Ich versuche, die Karte in ggplot2 in R zu tun. Ich benutze diese Funktion aus rgdal Paket:Wie bekomme ich schwedische Zeichen in R

mapa <- readOGR(dsn=path.expand("C:/~/SWE_adm_shp"),layer="SWE_adm2") 

als ich:

fortify(mapa) 

ggplot(mapa, aes(x = long, y = lat, group = group)) + 
    geom_polygon(fill = "blue", col = "white") + 
    coord_map() 

Es funktioniert gut, aber wenn ich mir die aussehen

head(mapa) 

Ich sehe, dass die Namen der Kreise Haben Sie nicht die schwedische Schrift (NAME_2)

ID_0 ISO NAME_0 ID_1   NAME_1 ID_2  NAME_2 HASC_2 CCN_2 CCA_2 TYPE_2 ENGTYPE_2 
0 222 SWE Sweden 1 Östergötland 1 Ödeshög SE.OG.OD  0 <NA> Kommuner Municipality 
1 222 SWE Sweden 1 Östergötland 2 Åtvidaberg SE.OG.AT  0 <NA> Kommuner Municipality 
2 222 SWE Sweden 1 Östergötland 3  Boxholm SE.OG.BO  0 <NA> Kommuner Municipality 
3 222 SWE Sweden 1 Östergötland 4 Finspång SE.OG.FI  0 <NA> Kommuner Municipality 
4 222 SWE Sweden 1 Östergötland 5  Kinda SE.OG.KI  0 <NA> Kommuner Municipality 
5 222 SWE Sweden 1 Östergötland 6 Linköping SE.OG.LI  0 <NA> Kommuner Municipality 
    NL_NAME_2 VARNAME_2 
0  <NA>  <NA> 
1  <NA>  <NA> 
2  <NA>  <NA> 
3  <NA>  <NA> 
4  <NA>  <NA> 

Wie kann man darüber arbeiten?

> sessionInfo() 
R version 3.3.2 (2016-10-31) 
Platform: i386-w64-mingw32/i386 (32-bit) 
Running under: Windows >= 8 x64 (build 9200) 

locale: 
[1] LC_COLLATE=Swedish_Sweden.1252 LC_CTYPE=Swedish_Sweden.1252 LC_MONETARY=Swedish_Sweden.1252 
[4] LC_NUMERIC=C     LC_TIME=Swedish_Sweden.1252  

attached base packages: 
[1] stats  graphics grDevices utils  datasets methods base 
+0

Abhängig von der Codierung. Vielleicht hilft das Einstellen von Optionen (encoding = "UTF-8"). – djhurio

Antwort

3

versuchen, einen encoding Parameter auf Ihre Lese Zugabe:

mapa <- readOGR(dsn=path.expand("C:/~/SWE_adm_shp"),layer="SWE_adm2", encoding = "UTF-8") 

to specify the encoding des Zeichensatzes Ihre Datei verwendet. Es ist eine gute Wette, dass es UTF-8 sein wird.

+0

Es hat überhaupt nicht geholfen – Mateusz1981

+0

@ Mateusz1981 Das ist bedauerlich. Vielen Dank, dass Sie Ihre Länderinformationen hinzugefügt haben. Da Sie unter Windows sind, können Sie in ein Terminal gehen und das Ergebnis von 'Datei C:/~/SWE_adm_shp' veröffentlichen? Es sollte seine Kodierung zeigen. – msanford

+0

Ich denke, ich habe ANSI som default – Mateusz1981

Verwandte Themen