Kopie des alten Systems |
Dies ist eine alte Kopie des GenWiki und spiegelt den Stand vom 8. Mai 2022 wider. This is an old copy of the GenWiki and reflects the status as of May 8, 2022. Please visit us at wiki.genealogy.net |
GOV/Statistik
aus GenWiki, dem genealogischen Lexikon zum Mitmachen.
Animierte Karte
Koordinaten und Bearbeitungszeitpunkte in einer Tabelle zusammenstellen:
CREATE TEMPORARY TABLE visual ( date date, latitude double, longitude double); INSERT INTO visual SELECT DISTINCT date(valid_from), latitude, longitude FROM gov_item, revision WHERE gov_item.id=revision.item AND latitude IS NOT NULL; INSERT INTO visual SELECT DISTINCT '2000-01-01', latitude, longitude FROM gov_item WHERE id <= 149288 AND latitude IS NOT NULL;
Mit diesem Skript werden die Einzelbilder erzeugt:
#!/bin/bash currentdate=$1 loopenddate=$(/bin/date --date "$2 1 day" +%Y-%m-%d) until [ "$currentdate" = "$loopenddate" ] do echo $currentdate echo "SELECT longitude, latitude from visual where date <= '$currentdate';"| mysql gov |grep -v longi > alt.txt echo "SELECT longitude, latitude from visual where date = '$currentdate';"| mysql gov |grep -v longi > neu.txt /usr/lib/gmt/bin/pscoast -R-7/32/44/58 -JM12.8i --PAPER_MEDIA=A2 -Di -A500 -W0.5p,white -P -K > temp.ps /usr/lib/gmt/bin/psxy alt.txt -R -JM -Sc0.01 -Gdarkblue -O -P -K >> temp.ps /usr/lib/gmt/bin/psxy neu.txt -R -JM -Sc0.05 -Gyellow -O -P >> temp.ps gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pngalpha -q -r100 -sOutputFile=temp.png temp.ps convert temp.png -background black -flatten -trim -resize 1280x720! $currentdate.png currentdate=$(/bin/date --date "$currentdate 1 day" +%Y-%m-%d) done
Die Jahreszahlen im Film werden jeweils in die Bilder zum Januar kopiert. Dazu habe ich ein schwarzes Bild (1280x720 Pixel groß) mit der Jahreszahl unten links erstellt. Mit folgenden Befehl wird es in die Einzelbilder gerechnet:
for p in 2012-01*; do pngtopnm $p > temp.ppm; rm $p; pnmarith -add temp.ppm text2012.pgm | pnmtopng > $p; done
Die Einzelbilder werden dann zu einem Film verrechnet:
mencoder mf://20*.png -mf w=1280:h=720:fps=15:type=png -ovc lavc -lavcopts vcodec=mpeg4:mbd=2:trell -oac copy -o gov.avi
Karte mit Regionen starker Bearbeitung
Tabelle gov_all_edits.txt mit allen Bearbeitungen erstellen:
SELECT longitude, latitude,1 FROM revision, gov_item WHERE item=gov_item.id AND latitude IS NOT NULL;
und mit folgenden Befehlen in eine Karte umwandeln.
/usr/lib/gmt/bin/blockmean gov_all_edits.txt -R-7/32/44/58 -I5m -Sz -C > gov_all_edits_5x5.xyg /usr/lib/gmt/bin/xyz2grd gov_all_edits_5x5.xyg -R-7/32/44/58 -I5m -Ggov_all_edits_5x5.grd # /usr/lib/gmt/bin/grd2cpt gov_all_edits_5x5.grd > data.cpt /usr/lib/gmt/bin/grdimage gov_all_edits_5x5.grd -JM12.8i --PAPER_MEDIA=A2 -Cdata.cpt -B2 -K > map.ps /usr/lib/gmt/bin/pscoast -R -J -Di -A500 -W0.5p,white -N1/0.25p,gray -O >> map.ps
Mit -I5m wird ein Raster von 5' festgelegt. Die Farbtabelle data.cpt kann man sich generieren lassen oder diese hier verwenden:
0 0 0 0 1 0 0 0 1 285 1 0.1 10 285 1 1 10 255 1 1 25 255 1 1 25 225 1 1 50 225 1 1 50 195 1 1 100 195 1 1 100 165 1 1 250 165 1 1 250 135 1 1 500 135 1 1 500 105 1 1 750 105 1 1 750 75 1 1 1000 75 1 1 1000 45 1 1 2000 45 1 1 2000 15 1 1 3500 15 1 1 B 0 0 0 F 0 0 1 N 0 0 0