• [^] # Re: Utilisation d'autres données

    Posté par . En réponse à la dépêche GeoBases, services et visualisation pour données géographiques. Évalué à 4.

    Effectivement il devient urgent de créer des pages de wiki :).
    Si le fichier est formaté en CSV, l'utilisation suivante doit fonctionner:

    $ cat file.csv | GeoBase -i delimiter headers indexes

    Avec headers pour le nom des colonnes séparées par un '/', indexes pour les colonnes qui servent d'index. Par exemple:

    $ cat file.csv
    d1 48.22 2.33
    d2 49.33 2.24
    $ cat file.csv | GeoBase -i ' ' name/lat/lng name
    
    

    Pour rajouter file.csv comme un nouvelle source de données permanente, il faut effectivement modifier le fichier YAML.

    Si le fichier n'est pas formaté en CSV, il faut utiliser l'API Python pour remplir la base à la main.

    Soit on arrive à transformer la source sous forme de file-like, auquel cas on peut loader d'un coup comme ceci (en reprenant le même fichier comme exemple):

    >>> from GeoBases import GeoBase
    >>> g = GeoBase(data='feed', 
    ... source=open('file.csv'),
    ... delimiter=' ',
    ... headers=['name', 'lat', 'lng'],
    ... indexes = ['name'])
    >>> g.getLocation('d1')
    (48.22, 2.33)
    >>> g.visualize()
    
    

    Soit il faut créer l'objet vide et le remplir à la main comme cela:

    >>> from GeoBases import GeoBase
    >>> g = GeoBase('feed')
    >>> g.set('d1', 'lng', 2.4) # ces données proviennent d'ailleurs
    >>> g.set('d1', 'lat', 48.2)
    >>> g.visualize()
    
    

    Je viens de fixer un bug pour que la dernière ligne fonctionne :).