Vai al contenuto

Go on the Ubuntu website and follow their instructions for downloading and flashing, and do not boot the Pi at this time.

Eject the sd card from the pc you used to flash, and remount it.

Go to /etc/cloud/cloud-init.cfg-d and add a a file containing this, editing your credentials in:

And thank the great tcoupin on github for writing the file. Now you can boot the Pi, and assuming you added your ssh keys in .ssh/authorized_keys, all is well.

Scrivere documentazione è una cosa insopportabile.

Adesso affronteremo come plottare dati geografici con
gnuplot. Ci serviranno, nell’ordine:

Un file di dati in un formato accettato da gnuplot, importante che
abbia colonne per latitudine e longitudine. La prima colonna non sarà
usata, possiamo scriverci quello che ci pare. O almeno a me serviva
così, ma aggiustando gli opportuni riferimenti si può anche evitare.

La cartina deve essere in proiezione equirettangolare perché così
possiamo trattare latlong come coordinate cartesiane senza alcuna
deformazione, un adattamento di questo lavoro ad altre proiezioni
sarebbe più che gradito. Molte cartine di questo tipo si trovano su
wikimedia commons come “location map”.

La cartina da cui vogliamo partire è questa:

Cominciamo:

Siccome mi annoio troppo a scrivere i passi, inondo lo script di
commenti:

#!/opt/local/bin/gnuplot 
# -- la riga sopra indica al terminale dove trovare l'interprete
# adatto. vale solo se questo file ha il flag x #
# http://gnuplot-surprising.blogspot.com/2011/09/gnuplot-background-image.html

reset # utile solo se viene caricato con `load`
set term pngcairo nocrop enhanced size 477,599 truecolor 
# vogliamo un buon png, con antialiasing, i due numeri indicano le dimensioni che vogliamo ottenere.

set output "graphmap_italy.png"
# come si chiama il file che vogliamo ottenere?

set multiplot
# dobbiamo plottare più di un grafico sulla tela, chi l'avrebbe mai detto?

set xrange [0:476]
set yrange [0:598]
# inizio e fondo scala del "grafico" sfondo	

unset tics
unset border
unset key
# niente tacche, bordi e legenda.

set lmargin at screen 0
set rmargin at screen 1
set bmargin at screen 0
set tmargin at screen 1
# il grafico occupa tutta la tela.

plot "equirectangular_italy_477x599.png" binary filetype=png w rgbimage
# ora lo sfondo è disegnato! :D 

set xrange [6.2:19]
set yrange [35.3:47.4]
# gli estremi geografici dell'area rappresentata ;)

set lmargin at screen 0
set rmargin at screen 1
set bmargin at screen 0
set tmargin at screen 1
unset tics
unset border
unset key
# come sopra, espandiamo e puliamo.

set style fill transparent solid 0.35 noborder
# che tipo di cerchi vogliamo?

plot "italian_top1000_cities_coordinates_census2001.tsv" using 3:2:(sqrt($4)/3500) with circles;
# altro da spiegare? la terza colonna è il raggio dei cerchi. 

unset multiplot

To be done:

  • adattare lo script a proiezioni non equirettangolari