Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati


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 Openstreetmap.

Preparativi

Abilitare i componenti universe e multiverse dei repository ufficiali.

Installazione

Installare il pacchetto python-mapnik.

Esempio di utilizzo

Di seguito viene mostrato un esempio di utilizzo di Mapnik.

  1. Scaricare da questo indirizzo un dataset vettoriale in formato ESRI Shapefile e decomprimerlo all'interno della propria Home.

  2. Aprire un editor di testo e incollare al suo interno il seguente testo:

       1 #!/usr/bin/env python
       2 
       3 from mapnik import *
       4 
       5 # Definizione delle dimensioni della mappa
       6 # e il sistema di riferimento geografico (latlon WGS84)
       7 m = Map(500,300,"+proj=latlong +datum=WGS84")
       8 
       9 # Colore dello sfondo
      10 m.background = Color('steelblue')
      11 
      12 # Creazione di uno stile
      13 s = Style()
      14 
      15 # Definizione dello stile. Uno stile puo' comprendere una o piu' regole (Rule).  
      16 # Una regola puo' comprendere un filtro, la definizione di scala minima e massima, 
      17 # uno o piu' Symbolizers (PolygonSymbolizer e LineSymbolizer)
      18 r=Rule()
      19 
      20 # Colore di riempimento dei poligoni
      21 r.symbols.append(PolygonSymbolizer(Color('#f2eff9')))
      22 
      23 # Colore e spessore delle linee di contorno
      24 r.symbols.append(LineSymbolizer(Color('rgb(50%,50%,50%)'),0.1))
      25 s.rules.append(r)
      26 
      27 # Aggiunta dello stile alla mappa e definizione di un nome 
      28 # da usare nella definizione del livello
      29 m.append_style('My Style',s)
      30 
      31 # Vengono definiti i nomi di uno o piu' livelli (Layer)
      32 lyr = Layer('world')
      33 
      34 # Percorso allo shapefile.
      35 # Lo shapefile deve essere indicato senza estensione!
      36 lyr.datasource = Shapefile(file='/percorso/ai/dati/world_borders')
      37 
      38 # Aggiunta dello stile al livello
      39 lyr.styles.append('My Style')
      40 
      41 # Aggiunta del livello della mappa
      42 m.layers.append(lyr)
      43 
      44 # Definizione dell'estensione geografica. Le due coppie di coordinate 
      45 # corrispondono ai due angoli basso-sinistro e alto-destro della mappa
      46 bbox = Envelope(Coord(6, 34), Coord(22, 48)) 
      47 
      48 # Ingrandimento all'estensione geografica definita prima
      49 m.zoom_to_box(bbox)
      50 
      51 # Conversione  della mappa m nel file italia.png con formato .png
      52 render_to_file(m,'italia.png', 'png')
      53 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.

  3. Una volta salvato il file è necessario impostare i 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


CategoryProgrammazione CategoryDaRevisionare