## page was renamed from Mapnik
## page was renamed from TommasoDiBucchianico/Prove2
## page was renamed from TommasoDiBucchianico/prove1
#format wiki
#LANGUAGE it
<
>
<>
= Introduzione =
Questa guida contiene le istruzioni necessarie per l'installazione di '''Mapnik''', uno strumento utile alla realizzazione di mappe a partire da dati vettoriali e raster.
'''Mapnik''' è il renderer ufficiale del progetto di cartografia libera [[http://www.openstreetmap.org/|Openstreetmap]].
= Preparativi =
Abilitare i [[Repository/Componenti|componenti]] '''universe''' e '''multiverse''' dei [[Repository|repository]] ufficiali.
= Installazione =
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto ''python-mapnik''.
= Esempio di utilizzo =
Di seguito viene mostrato un esempio di utilizzo di '''Mapnik'''.
0. Scaricare da [[https://public.opendatasoft.com/api/explore/v2.1/catalog/datasets/world-administrative-boundaries/exports/shp|questo indirizzo]] un ''dataset vettoriale'' in formato [[http://it.wikipedia.org/wiki/Shapefile|ESRI Shapefile]] e [[AmministrazioneSistema/FormatiDiCompressione#metodografico|decomprimerlo]] all'interno della propria '''Home'''.
0. Aprire un [[Ufficio/EditorDiTesto|editor di testo]] e incollare al suo interno il seguente testo: {{{
#!python
#!/usr/bin/env python
from mapnik import *
# Definizione delle dimensioni della mappa
# e il sistema di riferimento geografico (latlon WGS84)
m = Map(500,300,"+proj=latlong +datum=WGS84")
# Colore dello sfondo
m.background = Color('steelblue')
# Creazione di uno stile
s = Style()
# Definizione dello stile. Uno stile puo' comprendere una o piu' regole (Rule).
# Una regola puo' comprendere un filtro, la definizione di scala minima e massima,
# uno o piu' Symbolizers (PolygonSymbolizer e LineSymbolizer)
r=Rule()
# Colore di riempimento dei poligoni
r.symbols.append(PolygonSymbolizer(Color('#f2eff9')))
# Colore e spessore delle linee di contorno
r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'),0.1))
s.rules.append(r)
# Aggiunta dello stile alla mappa e definizione di un nome
# da usare nella definizione del livello
m.append_style('My Style',s)
# Vengono definiti i nomi di uno o piu' livelli (Layer)
lyr = Layer('world')
# Percorso allo shapefile.
# Lo shapefile deve essere indicato senza estensione!
lyr.datasource = Shapefile(file='/percorso/ai/dati/world_borders')
# Aggiunta dello stile al livello
lyr.styles.append('My Style')
# Aggiunta del livello della mappa
m.layers.append(lyr)
# Definizione dell'estensione geografica. Le due coppie di coordinate
# corrispondono ai due angoli basso-sinistro e alto-destro della mappa
bbox = Envelope(Coord(6, 34), Coord(22, 48))
# Ingrandimento all'estensione geografica definita prima
m.zoom_to_box(bbox)
# Conversione della mappa m nel file italia.png con formato .png
render_to_file(m,'italia.png', 'png')
exit()
}}} Assegnare il nome `mappa.py` al file e salvarlo all'interno della propria '''Home'''. L'estensione geografica utilizzata dallo script si riferisce all'area mediterranea, è possibile modificare le coordinate se si desidera rendere un'altra zona geografica. Non dimenticare di modificare il percorso al file ESRI.
0. Una volta salvato il file è necessario impostare i [[AmministrazioneSistema/PermessiFile|permessi]] d'esecuzione e avviare lo script, digitando all'interno di una finestra di terminale i seguenti comandi: {{{
cd ~
chmod +x ~/mappa.py
./mappa.py
}}} Il risultato dovrebbe essere il file `~/italia.png` contenente la mappa.
= Ulteriori risorse =
* [[http://mapnik.org/documentation/|Documentazione ufficiale]]
* [[UbuntuGis|Guida all'installazione di altri strumenti GIS]]
* [[http://mike.teczno.com/notes/mapnik.html|Map Design: consigli utili]]
----
CategoryProgrammazione CategoryDaRevisionare