Polska w rankingu FIFA a projekt kubek

W poprzednim tygodniu pisałem o kubku, na który naniosłem różne informacje związane z Polską (więcej informacji tutaj). Dzisiaj napiszę o tym jak powstawał jeden z naniesionych na kubek wykresów, a konkretniej wykres ilustrujący pozycję Polski w rankingu FIFA.
Będzie bardzo technicznie, będzie kod w R, będzie o poprawianiu wykresu, będzie zabawa!

Dane

Pozycja w rankingu została pobrana ze strony FIFA (zobacz tutaj). Z przyczyn technicznych zamiast odczytywać w R dane bezpośrednio ze strony, w tym przypadku pobrałem je ręcznie i zapisałem do pliku (do pobrania tutaj, gdyby ktoś chciał odtworzyć ten wykres).

Wykres

Punktem wyjścia był wykres poniżej. Jasne było dla mnie, że:
Powinny być pomocnicze linie poziome, tak by można było odczytać jaka jest pozycja w rankingu.
Na wykresie nie powinno być ramki, bo ta źle by wyglądałaby na kubku.
Powinny być osie i z lewej i z prawej, tak by łatwiej było odczytać pozycje w rankingu nawet w środku wykresu.
Na wykresie powinna być linia łącząca punkty (pozycje w rankingu), tak by łatwiej było zobaczyć jak pozycja Polski się zmieniała.
I jednocześnie trzeba narysować też same punkty (pozycje w rankingu), tak by było wiadomo z jaką częstością mamy wyliczane rankingi FIFA.

Po dwóch dniach wykres przestał mi się podobać i zacząłem go zmieniać.
Zamiast słabo wyglądającej linii zrobiłem wykres wypełniony szarym kolorem, którego dolny brzeg zaznaczał gdzie jesteśmy w rankingu.
Uważałem, że punkt zero powinien być u góry wykresu a nie na dole, intuicyjnie zakładam że im coś jest wyżej tym lepiej.
Jednocześnie wypełnienie musiało zaczynać się w zerze, dlatego że ,,na dole” wykresu nie było żadnego charakterystycznego punktu, który mógł być poziomem odniesienia.
Na szarym wypełnionym polu ciemnoszare linie pomocnicze źle wyglądały. Dominowały wykres, zaciemniały zachowanie brzegu szarego obszaru, więc zdecydowałem się na białe linie pomocnicze. Kopia pomysłu Tuftego, by zmniejszać liczbę obiektów na wykresie, a zwiększać ilość informacji.

Po kilku kilku kolejnych dniach pokazałem ten wykres osobie, która ma i zmysł estetyczny i wprost mówi co jej się nie podoba (znana jako PCh).
Zauważyła kilka rzeczy, między innymi, że ten szary wykres źle wygląda w zestawieniu z innymi kolorowymi wykresami, że na wydruku białe linie poziome rozcinające wykres wyglądają jakby się zepsuł toner.

Więc wykres nabrał kolorów, oglądając stronę FIFA najbardziej naturalnym wyborem wydawał się ciemnoniebieski, ale ten kolor był już zarezerwowany dla wykresu WIG20. Oglądając inne materiały związane z FIFA ostatecznie zdecydowałem się na pomarańczowy.
Usunąłem brzeg, który źle wyglądał.
Linie poziome podzieliłem na ,,główne” (co 20) i pomocnicze (co 10).
Usunąłem też 4% margines pomiędzy wykresem a osiami wykresu (R dodaje go automatycznie, ale tutaj źle wyglądał), dzięki temu opisu osi znalazły się bliżej wykresu.
Zwiększyłem też opisy osi i rozciągnąłem wykres w pionie by był czytelniejszy.

Ostatnie zmiany miały miejsce już w zestawieniu z pozostałymi wykresami.
Na wszystkich wykresach zmieniłem pomocnicze linie, by były rzadziej kropkowane a przez to czytelniejsze na małej powierzchni.
Powiększyłem opisy osi.
Usunąłem lewy opis osi, który kolidował z sąsiednim wykresem i tak doszliśmy do tego wykresu

A tutaj jest kod w R, wczytujący dane i rysujący końcową wersję.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#
# wczytujemy dane
dane <- read.table("http://tofesi.mimuw.edu.pl/~cogito/smarterpoland/projektKubek/fifaM.csv",sep=";")
rokM <- ifelse(dane[,2] < 50, dane[,2] + 2000, dane[,2] + 1900) + dane[,1]/12
miejsceM <- dane[,3]
 
#
# i je rysujemy
par(mar=c(3,5,2,5),cex.lab=0.5,xpd=F)
plot(rokM, miejsceM, type="o", pch=19, las=1, ylim=c(75,1),ylab="",     
     bty="n",xaxs="i",yaxs="i",yaxt="n",xaxt="n",cex=8.5/(miejsceM+1), 
     lty=3,xlab="",col="white", xlim=c(1994.2,2013.1))
 
axis(3,seq(2013,1995,-2),las=1,col="white",col.ticks="black",cex.lab=0.5)
axis(4,seq(80,0,-10),las=1,col="white",cex.lab=0.5)
 
polygon(c(max(rokM),rokM,min(rokM)), c(0,miejsceM,0),col="orange2",border="orange2")
abline(h=seq(20,70,20),lty=1,col="orange4",lwd=2)
abline(h=seq(10,70,10),lty="19",col="orange4",lwd=2)
polygon(c(max(rokM),rokM,min(rokM)), c(100,miejsceM,100),col="white",border="white")

9 thoughts on “Polska w rankingu FIFA a projekt kubek”

  1. Dane można pobrać w następujący sposób:

    library(httr)
    library(XML)
    doc<-GET('http://www.fifa.com/xmlfeed/rank/gender=m/associations/association=pol.xml&#039😉
    doc<-htmlParse(doc,encoding='utf-8')
    data<-xpathApply(doc,'//rank',xmlGetAttr,'date')
    pozycja<-xpathApply(doc,'//rank',xmlGetAttr,'value')
    dane<-cbind(unlist(data),unlist(pozycja))
    dane<-as.data.frame(dane)
    names(dane)<-c('Data','Pozycja')
    head(dane)

    Jak dobrze, że jest w Chrome zakładka "Narzędzia dla programistów" a w FireFox – FireBug 🙂

  2. Dzięki, działa!

    (tylko wordpress zamienił ; ) na buźkę )
    doc<-GET( „http://www.fifa.com/xmlfeed/rank/gender=m/associations/association=pol.xml” )

  3. Ciekawy wykres jak i cała reszta. Zabrakło jednak komentarza!

    Wykres pokazuje pewny mankament metody liczenia punktów w ranking FIFA. Widzimy, że na lata 2010-12 przypadają najniższe pozycje Polskiej reprezentacji. Wiadomo, że Polska przez jeszcze jakiś czas nie będzie potęgą piłkarską, ale moim zdaniem jak i innych moich kolegów kibiców ta reprezentacja jest zdecydowanie najsilniejsza biorąc pod uwagę drużyny, jakie mieliśmy po 2000 roku. Polska jako gospodarz EURO 2012 nie musiała przechodzić kwalifikacji i wszystkie jej punkty, które udało się jej zdobyć w latach 2009-12 były ważone mnożnikiem 1 zamiast 2.5, jaki obowiązuje m.in. dla meczy eliminacji do ME i MŚ. Za ostatni remis z Anglią w eliminacjach Polska zdobywa porównywalnie dużo punktów co za hipotetyczne zwycięstwo nad Włochami, ale w meczu towarzyskim. Można się spodziewać, że na przestrzeni najbliższych 2 lat Polska awansuje ponownie na (a, podam dość szeroki przedział, żeby nic nie zapeszać;) 20-40 pozycję w rankingu.

    To też m.in. tłumaczy dlaczego w obecnym rankingu FIFA Polska jest za takimi tuzami światowej piłki jak Jamajka, Boliwia czy Zambia 😉

    Podobna jest sytuacja Ukrainy. Poza tym, jeśli kibice Brazylii będą sugerować się pozycją swojej drużyny w rankingu, to do czasu MŚ popadną w głęboką depresję.

  4. Ciekawe, nie znałem metody wyznaczani arankingu FIFA.
    Zobaczymy po sezonie jak zmieni się pozycja Polski, oby faktycznie była wyżej, jest dużo miejsca na awans.

    1. Dziękuję za znalezienie tego problemu,
      jakiś czas temu padł główny serwer z materiałami i nie wszystko udało się odzyskać z backupu.
      Ale wykresy i dane do tego wpisu już odtworzyłem.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *