Setup i wczytanie danych
library(dplyr)
library(ggplot2)
library(rgdal)
# bezrobocie.csv = plik Excela z
# http://stat.gov.pl/obszary-tematyczne/rynek-pracy/bezrobocie-rejestrowane/liczba-bezrobotnych-zarejestrowanych-oraz-stopa-bezrobocia-wedlug-wojewodztw-podregionow-i-powiatow-stan-w-koncu-pazdziernika-2016-r-,2,51.html
# skonwertowany do CSV (od wiersza 7 włącznie)
dane <- read.csv2("bezrobocie/bezrobocie.csv", stringsAsFactors = FALSE)
# bez zbędnych spacji w nazwach
dane$nazwa <- trimws(dane$nazwa)
# tylko powiaty
dane_pow <- filter(dane, POW!=0)
# WOJ + POW na kody TERYT
dane_pow$TERYT <- sprintf("%02d%02d", dane_pow$WOJ, dane_pow$POW)
# mapa z plików SHP
# pliki SHP dla Polski z archiwum
# ftp://91.223.135.109/prg/jednostki_administracyjne.zip
powiaty <- readOGR("mapy/powiaty", "powiaty")
## OGR data source with driver: ESRI Shapefile
## Source: "mapy/powiaty", layer: "powiaty"
## with 380 features
## It has 29 fields
# porzadek we współrzędnych
powiaty <- spTransform(powiaty, CRS("+init=epsg:4326"))
powiaty <- fortify(powiaty, region = "jpt_kod_je")
# złączenie mapy z danymi
powiaty_mapa <- left_join(powiaty, dane_pow, by=c("id"="TERYT"))
powiaty_mapa <- select(powiaty_mapa, long, lat, order, hole, piece, id, group, WOJ, stopa_bezrobocia)
# podział na 11 przedziałów - 11, bo tyle kolorów jest w palecie RdYlGn
powiaty_mapa$stopa_bezrobocia_przedzial <- cut(powiaty_mapa$stopa_bezrobocia, 11)
# przedziały w odwrotnej kolejności - żeby kolory miały sens
powiaty_mapa$stopa_bezrobocia_przedzial <- factor(powiaty_mapa$stopa_bezrobocia_przedzial, levels = rev(levels(powiaty_mapa$stopa_bezrobocia_przedzial)))
Cała Polska
# jedna mapa dla całego kraju
mapa <- powiaty_mapa %>%
ggplot() +
geom_polygon(aes(long, lat, group=group, fill=stopa_bezrobocia_przedzial), color="gray50") +
theme_void() +
labs(fill="Stopa bezrobocia") +
scale_fill_brewer(palette = "RdYlGn")
plot(mapa)

Poszczególne województwa
# narysowanie map dla poszczególnych województw
for(i in seq(2, 32, 2)) {
# co to za województwo?
woj <- filter(dane, WOJ==i, PODR==0)[1,4]
cat(paste("\n##", woj, "\n")) # dla spisu treści
# rysujemy mapę powiatów województwa
mapa <- powiaty_mapa %>%
filter(WOJ==i) %>%
ggplot() +
geom_polygon(aes(long, lat, group=group, fill=stopa_bezrobocia_przedzial), color="gray50") +
theme_void() +
labs(fill="Stopa bezrobocia") +
scale_fill_brewer(palette = "RdYlGn")
cat("\n") # trick dla rmarkdown
plot(mapa)
# dodatkowo tabela z danymi
tabela <- dane %>%
filter(WOJ==i, POW!=0) %>%
arrange(desc(stopa_bezrobocia)) %>%
mutate(stopa_bezrobocia=paste0(as.character(stopa_bezrobocia), "%")) %>%
select(Powiat=nazwa, "Stopa bezrobocia"=stopa_bezrobocia)
print(knitr::kable(tabela))
cat("\n") # trick dla rmarkdown
}
Woj. DOLNOŚLĄSKIE

| wałbrzyski |
18.5% |
| górowski |
18.4% |
| złotoryjski |
18.2% |
| kłodzki |
16.7% |
| lwówecki |
16.3% |
| jaworski |
14.5% |
| wołowski |
13.9% |
| legnicki |
13.6% |
| ząbkowicki |
13.3% |
| strzeliński |
12.2% |
| jeleniogórski |
11.1% |
| lubański |
11.1% |
| głogowski |
10.8% |
| milicki |
10.2% |
| dzierżoniowski |
10% |
| kamiennogórski |
9.9% |
| m. Wałbrzych |
8.9% |
| trzebnicki |
8.1% |
| oleśnicki |
7.9% |
| świdnicki |
7.8% |
| zgorzelecki |
7.3% |
| średzki |
7.2% |
| oławski |
6.8% |
| m. Legnica |
6.5% |
| bolesławiecki |
5.5% |
| lubiński |
5.5% |
| polkowicki |
5.5% |
| m. Jelenia Góra |
4.4% |
| wrocławski |
2.9% |
| m. Wrocław |
2.9% |
Woj. KUJAWSKO-POMORSKIE

| włocławski |
21.1% |
| radziejowski |
19.6% |
| lipnowski |
19.5% |
| inowrocławski |
16.5% |
| wąbrzeski |
15.8% |
| aleksandrowski |
15.8% |
| sępoleński |
15.6% |
| m. Włocławek |
15.5% |
| nakielski |
15.4% |
| grudziądzki |
15.2% |
| żniński |
15.2% |
| chełmiński |
15.1% |
| tucholski |
14.8% |
| golubsko-dobrzyński |
13.9% |
| mogileński |
13.6% |
| toruński |
13.5% |
| rypiński |
12.8% |
| m. Grudziądz |
12.7% |
| świecki |
10% |
| brodnicki |
9.8% |
| bydgoski |
7.8% |
| m. Toruń |
5.9% |
| m. Bydgoszcz |
4.9% |
Woj. LUBELSKIE

| włodawski |
18% |
| chełmski |
14.7% |
| hrubieszowski |
14.7% |
| krasnostawski |
12.9% |
| m. Biała Podlaska |
12.8% |
| świdnicki |
12.6% |
| lubartowski |
12.5% |
| m. Chełm |
12.4% |
| kraśnicki |
12.4% |
| bialski |
12.1% |
| m. Zamość |
12.1% |
| zamojski |
11.5% |
| opolski |
10.9% |
| rycki |
10.8% |
| radzyński |
10.7% |
| janowski |
10.6% |
| parczewski |
9.6% |
| tomaszowski |
8.9% |
| lubelski |
8.4% |
| m. Lublin |
7.1% |
| puławski |
7.1% |
| łęczyński |
6.4% |
| biłgorajski |
6% |
| łukowski |
6% |
Woj. LUBUSKIE

| międzyrzecki |
14.7% |
| strzelecko-drezdenecki |
14.6% |
| krośnieński |
13.9% |
| żagański |
13.8% |
| nowosolski |
13.6% |
| wschowski |
10.3% |
| sulęciński |
9.5% |
| zielonogórski |
9.1% |
| żarski |
7.7% |
| świebodziński |
7.2% |
| gorzowski |
7.1% |
| m. Zielona Góra |
4.7% |
| słubicki |
3.9% |
| m. Gorzów Wielkopolski |
3.9% |
Woj. ŁÓDZKIE

| kutnowski |
12.5% |
| łaski |
11.3% |
| zgierski |
10.5% |
| łęczycki |
10.5% |
| brzeziński |
10.4% |
| zduńskowolski |
9.8% |
| pabianicki |
9.7% |
| tomaszowski |
9.3% |
| łódzki wschodni |
9.2% |
| radomszczański |
9.2% |
| poddębicki |
9.2% |
| m. Łódź |
8.3% |
| pajęczański |
8.3% |
| wieluński |
8.3% |
| opoczyński |
8.2% |
| m. Piotrków Trybunalski |
8.2% |
| sieradzki |
8% |
| piotrkowski |
7.9% |
| m. Skierniewice |
7.5% |
| bełchatowski |
7.3% |
| łowicki |
7.2% |
| wieruszowski |
5.9% |
| rawski |
5.4% |
| skierniewicki |
5% |
Woj. MAŁOPOLSKIE

| dąbrowski |
13.6% |
| tatrzański |
12% |
| chrzanowski |
10.4% |
| nowosądecki |
10.1% |
| limanowski |
10% |
| nowotarski |
9.2% |
| tarnowski |
9.1% |
| olkuski |
8.9% |
| gorlicki |
8.8% |
| proszowicki |
8% |
| brzeski |
7.9% |
| oświęcimski |
7.8% |
| miechowski |
7.1% |
| m. Tarnów |
7.1% |
| wielicki |
6.5% |
| m. Nowy Sącz |
6.3% |
| bocheński |
6.1% |
| wadowicki |
6% |
| krakowski |
5.4% |
| suski |
5.1% |
| myślenicki |
4.8% |
| m. Kraków |
3.7% |
Woj. MAZOWIECKIE

| szydłowiecki |
27.3% |
| radomski |
22% |
| przysuski |
21.3% |
| sierpecki |
20% |
| makowski |
19.6% |
| pułtuski |
18.8% |
| gostyniński |
17.1% |
| żuromiński |
17% |
| m. Radom |
16.1% |
| płocki |
14.7% |
| zwoleński |
14.6% |
| ostrołęcki |
14.2% |
| ciechanowski |
13.1% |
| płoński |
13.1% |
| żyrardowski |
13% |
| m. Ostrołęka |
12.5% |
| kozienicki |
12.3% |
| przasnyski |
12% |
| ostrowski |
11.9% |
| wołomiński |
11.9% |
| lipski |
11.8% |
| garwoliński |
11.5% |
| legionowski |
11.4% |
| węgrowski |
9.9% |
| białobrzeski |
9.6% |
| mławski |
9.3% |
| nowodworski |
8.6% |
| m. Płock |
8.6% |
| sochaczewski |
8.1% |
| sokołowski |
8% |
| łosicki |
7.6% |
| wyszkowski |
7.5% |
| miński |
7.3% |
| siedlecki |
7.3% |
| m. Siedlce |
7.2% |
| otwocki |
6.1% |
| piaseczyński |
5.6% |
| pruszkowski |
5.6% |
| grodziski |
4.7% |
| grójecki |
3.6% |
| warszawski zachodni |
3.4% |
| m. Warszawa |
2.9% |
Woj. OPOLSKIE

| prudnicki |
12.9% |
| brzeski |
12.7% |
| głubczycki |
12.4% |
| namysłowski |
11.7% |
| nyski |
11.3% |
| kędzierzyńsko-kozielski |
10% |
| kluczborski |
9.5% |
| opolski |
9.1% |
| oleski |
6.5% |
| krapkowicki |
6.3% |
| strzelecki |
5.9% |
| m. Opole |
4.8% |
Woj. PODKARPACKIE

| leski |
18.4% |
| brzozowski |
18.1% |
| niżański |
18.1% |
| strzyżowski |
17.4% |
| bieszczadzki |
16.8% |
| przemyski |
16% |
| leżajski |
15.3% |
| przeworski |
15.2% |
| ropczycko-sędziszowski |
15% |
| jarosławski |
14.5% |
| m. Przemyśl |
13.9% |
| łańcucki |
13.3% |
| jasielski |
12.8% |
| m. Tarnobrzeg |
11.5% |
| lubaczowski |
11.3% |
| kolbuszowski |
11.1% |
| rzeszowski |
10.8% |
| krośnieński |
9.9% |
| tarnobrzeski |
9.8% |
| dębicki |
9.1% |
| sanocki |
8.9% |
| mielecki |
8% |
| stalowowolski |
7.8% |
| m. Rzeszów |
6.7% |
| m. Krosno |
4.6% |
Woj. PODLASKIE

| grajewski |
16.9% |
| kolneński |
16.1% |
| sejneński |
14.7% |
| sokólski |
13.7% |
| augustowski |
13.5% |
| białostocki |
12.5% |
| m. Łomża |
11.9% |
| łomżyński |
10.3% |
| zambrowski |
10.1% |
| moniecki |
10.1% |
| m. Białystok |
9.3% |
| hajnowski |
9.2% |
| siemiatycki |
8.8% |
| m. Suwałki |
7% |
| bielski |
6.7% |
| wysokomazowiecki |
6.7% |
| suwalski |
5.6% |
Woj. POMORSKIE

| nowodworski |
16.7% |
| malborski |
16.3% |
| człuchowski |
15.7% |
| bytowski |
14.5% |
| sztumski |
13.6% |
| słupski |
12.4% |
| chojnicki |
12.2% |
| lęborski |
10.2% |
| pucki |
9.8% |
| wejherowski |
9.8% |
| kwidzyński |
8.1% |
| starogardzki |
8.1% |
| kościerski |
7.9% |
| tczewski |
7.5% |
| m. Słupsk |
6.1% |
| gdański |
5.6% |
| kartuski |
4.3% |
| m. Gdynia |
3.9% |
| m. Gdańsk |
3.7% |
| m. Sopot |
3% |
Woj. ŚLĄSKIE

| m. Bytom |
15.5% |
| będziński |
11.4% |
| zawierciański |
11.4% |
| myszkowski |
11% |
| częstochowski |
10.7% |
| m. Sosnowiec |
10.2% |
| m. Świętochłowice |
9.8% |
| m. Piekary Śląskie |
9.6% |
| żywiecki |
9% |
| rybnicki |
8.9% |
| kłobucki |
8.7% |
| m. Siemianowice Śląskie |
8.5% |
| lubliniecki |
8.2% |
| wodzisławski |
8.2% |
| tarnogórski |
8.1% |
| m. Dąbrowa Górnicza |
7.9% |
| m. Zabrze |
7.6% |
| m. Chorzów |
7.1% |
| gliwicki |
7% |
| m. Żory |
7% |
| cieszyński |
6.4% |
| m. Częstochowa |
6.3% |
| m. Mysłowice |
6.2% |
| raciborski |
6.2% |
| m. Jastrzębie-Zdrój |
6% |
| m. Rybnik |
5.8% |
| m. Jaworzno |
5.8% |
| bielski |
5.5% |
| m. Ruda Śląska |
5.5% |
| m. Gliwice |
4.3% |
| mikołowski |
4.3% |
| pszczyński |
4.2% |
| bieruńsko-lędziński |
3.7% |
| m. Tychy |
3.4% |
| m. Bielsko-Biała |
3.3% |
| m. Katowice |
2.9% |
Woj. ŚWIĘTOKRZYSKIE

| skarżyski |
20.1% |
| opatowski |
16.2% |
| ostrowiecki |
14% |
| konecki |
13.9% |
| kielecki |
13.6% |
| starachowicki |
10.8% |
| jędrzejowski |
10.6% |
| kazimierski |
9.2% |
| staszowski |
8.8% |
| sandomierski |
8.1% |
| pińczowski |
7.6% |
| włoszczowski |
7.6% |
| m. Kielce |
7.5% |
| buski |
5.2% |
Woj. WARMIŃSKO-MAZURSKIE

| braniewski |
24.4% |
| kętrzyński |
23% |
| bartoszycki |
22.8% |
| węgorzewski |
21.1% |
| piski |
20.9% |
| elbląski |
20.2% |
| lidzbarski |
19.8% |
| działdowski |
18.5% |
| ełcki |
16.6% |
| olecki |
15.7% |
| gołdapski |
15.7% |
| olsztyński |
15.2% |
| ostródzki |
14.5% |
| mrągowski |
13.9% |
| szczycieński |
13.7% |
| giżycki |
13.2% |
| m. Elbląg |
11.5% |
| nidzicki |
10.9% |
| nowomiejski |
10.4% |
| iławski |
5.9% |
| m. Olsztyn |
4.9% |
Woj. WIELKOPOLSKIE

| koniński |
13.5% |
| kolski |
10.6% |
| chodzieski |
10.4% |
| m. Konin |
9.9% |
| złotowski |
9.9% |
| średzki |
9.9% |
| słupecki |
9.2% |
| wągrowiecki |
8.5% |
| gnieźnieński |
7.9% |
| wrzesiński |
7.4% |
| gostyński |
7.1% |
| pilski |
7% |
| czarnkowsko-trzcianecki |
6.4% |
| obornicki |
6.3% |
| jarociński |
6% |
| rawicki |
5.6% |
| ostrzeszowski |
5.4% |
| turecki |
5.3% |
| międzychodzki |
5.2% |
| pleszewski |
5.1% |
| grodziski |
5.1% |
| kościański |
5% |
| m. Leszno |
4.8% |
| szamotulski |
4.8% |
| ostrowski |
4.5% |
| m. Kalisz |
4.5% |
| krotoszyński |
4.4% |
| leszczyński |
4.4% |
| kaliski |
4.1% |
| śremski |
4.1% |
| nowotomyski |
3.3% |
| wolsztyński |
3% |
| poznański |
2.4% |
| kępiński |
2.3% |
| m. Poznań |
2.1% |
Woj. ZACHODNIOPOMORSKIE

| łobeski |
22.1% |
| białogardzki |
22% |
| choszczeński |
19.1% |
| szczecinecki |
18.9% |
| drawski |
17.5% |
| kamieński |
17.5% |
| świdwiński |
17.4% |
| sławieński |
17% |
| pyrzycki |
16.6% |
| koszaliński |
16.2% |
| gryficki |
15% |
| gryfiński |
14.5% |
| wałecki |
11.4% |
| stargardzki |
11.3% |
| myśliborski |
10.1% |
| goleniowski |
8.6% |
| policki |
7.8% |
| kołobrzeski |
7.4% |
| m. Koszalin |
6.8% |
| m. Świnoujście |
5.6% |
| m. Szczecin |
4.7% |