M4rble / APPR-2019-20

Repozitorij z gradivi za predmet Analiza podatkov s programom R v študijskem letu 2019/20
MIT License
0 stars 0 forks source link

vizualizacija - legende in zemljevid #5

Closed M4rble closed 4 years ago

M4rble commented 4 years ago

Imam 2 problema:

  1. Pri grafih 2a, 3b, 4a, 4c in 6a (morda sem kakšnega spustil) mi program izriše čudno legendo - kot prehod barv v enem pravokotniku namesto da bi bilo vsako leto v svojem kvadratku kot recimo pri grafu 4b. V čem bi bil problem, glede na to da je koda pri teh grafih praktično identična, oziroma kako lahko popravim grafe da bodo imeli legendo tako kot 4b, saj se mi njihova trenutna ne zdi primerna? (sem poizkusil urediti z theme(legend. ...) vendar nisem našel ustrezne rešitve).

  2. Problem imam z uvozom zemljevida, saj ne razumem točno kako deluje. Našel sem zemljevid Evrope v obliki shp na internetu, ki bi moral biti primeren (je v mapi slike), vendar ga ne znam odpreti oziroma uvoziti na način kot smo naredili to na vajah, tudi drugih načinov iz interneta ne razumem najbolje.

Poleg tega me zanima, če imate še kakšne druge predloge za urejanje 3. faze, drugače bi po rešitvi teh dveh problemov zaključil z vizualizacijo.

katarinabrilej commented 4 years ago

Prvi problem rešiš tako, da recimo pri graf4c tip stolpca leto v razpredelnici primerjava_znanja_drzav spremeniš v character. Torej

primerjava_znanja_drzav$leto <- as.character(primerjava_znanja_drzav$leto)

Podobno za graf3b narediš

aktivnosti_po_letih$leto <- as.character(aktivnosti_po_letih$leto)

in podobno za graf4a. Za graf2a in graf6a pa se mi zdi, da je legenda pravilno prikazana.

katarinabrilej commented 4 years ago

Pri uvozu zemljevida Evrope najprej uvoziš zemljevid sveta.

svet <- uvozi.zemljevid(
"http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_0_countries.zip", "ne_50m_admin_0_countries", encoding="UTF-8")

Potem ga omejiš na območje Evrope, glej mperbil#1.

Sicer lahko uporabiš tudi vgrajeni zemljevid World, ki ga dobiš z ukazom data(World) (potrebuješ knjižnico tmap), potem skrčiš na območje Evrope, kot je narejeno v laravidmar#3.

Glede grafov je pa tako, da jih je kar precej in je dobro v poročilo vključiti le nekaj izmed teh (različne tipe in pa najbolj zanimive). Recimo graf1b je bolj pregleden kot graf1, v osnovi pa prikazujeta podobne stvari.

M4rble commented 4 years ago

Sem poizkusil z uvozom zemljevida na prvi način, vendar mi potem ko vstavim svoje podatke v tm_shape izpiše napako: Column SOVEREIGNT/drzava joining factor and character vector, coercing into character vector Poizkusil sem tudi z gg_plot, ki mi sicer izriše zemljevid, ampak je siv. Predvidevam, da je problem v tem, da ima zemljevid države poimenovane v angleščini, v mojih tabelah pa so vse v slovenščini in jih za to morda ne zazna, vendar ne vem kako ta problem enostavno odpraviti (poizkusil sem tako z manipuliranjem tabele World kot zemljevid, vendar nič ni delovalo).

katarinabrilej commented 4 years ago

Problem, da so države v slovenščini enostavno rešiš tako, da v razpredelnici dostop_do_interneta imena držav ne spremeniš v slovensko verzijo, tako bodo tudi imena v razpredelnici povprecni_delez_dostopa iz katere rišeš zemljevid ostala v angleščini. Prav tako moraš tm_polygons podati ime stolpca s podatki, torej povprecje in ne ime razpredelnice.

zemljevid <- uvozi.zemljevid(
 "http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_0_countries.zip", "ne_50m_admin_0_countries", encoding="UTF-8")
zemljevid <- zemljevid[zemljevid$CONTINENT == "Europe",]

tm_shape(merge(zemljevid,
              povprecni_delez_dostopa %>% group_by(drzava),
              by.x="SOVEREIGNT", by.y="drzava"), xlim=c(-15, 35) , ylim=c(32, 72)) +
tm_polygons("povprecje") + ggtitle("Tekme brez prejetega zadetka, glede na države")

Zdaj bo imela razpredelnica dostop_do_interneta angleška imena držav, zato moraš to popraviti (s slovarjem imen) pri posameznih grafih, ki jo uporabljajo, torej ne spremeniš dejanske razpredelnice ampak samo podatke, ki jih podaš funkciji za risanje grafa.

M4rble commented 4 years ago

Najlepša hvala za odgovor, sem popravil in zdaj deluje.