Giter Club home page Giter Club logo

cartiflette's People

Contributors

a-acquistapace avatar antoine-palazz avatar avouacr avatar linogaliana avatar pachevalier avatar sebnovella avatar tgrandje avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

cartiflette's Issues

Explorer un provider avec l'API carto (en version beta sur les flux du géoportail)

Pas réussi à attaquer directement les flux WFS (retour systématique d'un "MissingParameter" non précisé).

Ne fonctionne pas :

from owslib.wfs import WebFeatureService
url = "https://wxs.ign.fr/geoportail/wfs"
wfs = WebFeatureService(url=url, version='2.0.0')
cog_files = [
    x for x in wfs.contents
    if 'cog' in x.lower()
    and 'carto' in x.lower()
    and 'latest' in x.lower()
    ]
print(wfs.getfeature(cog_files[-1]).read())

En revanche, l'appel via l'API carto en version beta fonctionne ; le débit semble beaucoup plus rapide que sur le site de l'IGN (mais les md5 ne sont par contre pas fournis, il faudra les calculer à réception) :

from owslib.wfs import WebFeatureService
import geopandas as gpd
import requests

url = "https://wxs.ign.fr/geoportail/wfs"
wfs = WebFeatureService(url=url, version='2.0.0')
cog_files = [
    x for x in wfs.contents
    if 'cog' in x.lower()
    and 'carto' in x.lower()
    and 'latest' in x.lower()
    ]
print(cog_files)
file = cog_files[-1]
bbox_world = """{"type":"Polygon", "coordinates":[[[-180,-90],[-180,90],[180,90],[180,-90],[-180,-90]]]}"""
r = requests.get(
    'https://apicarto.ign.fr/api/wfs-geoportail/search',
    params={"source":file, "geom":bbox_world}
    )
gdf = gpd.GeoDataFrame.from_features(r.json())
gdf.plot()

Liste des personnes à contacter et informer du projet

Côté Insee :

  • L'équipe doremifasol: Pierre Lamarche, pyb, damien dotta, jdlom
  • Hadrien Leclerc
  • Kim Antunez
  • Julien Jamme
  • François Sémécurbe
  • Lionel Cacheux
  • Sébastien Novella
  • L'équipe COGiter: Juliette et Mael Theulière
  • L'équipe statslocales: Cédric Bobinec

Côté DREES (Vincent) :

  • Charlotte Geay et Gladys Baudet pour leur expérience au centre de crise sanitaire
  • Julie Kamionka (responsable calcul et appli APL)

Autres administrations:

Chercheurs géographes:

  • Romain Leconte
  • Julie Fromentin
  • Luc Guibard
  • Julie Chouraqui
  • Antoine Peris
  • Pierre Pistre
  • Hugues Pecout
  • Ronan Ysebaert
  • Thomas Ansard
  • Nicolas Lambert

Autres publics:

  • Jules Grandin ?

Enrichir ADMIN-EXPRESS-COG d'informations qualitatives

J'ai noté qu'AdminExpress-COG, qui est bien pratique, ne comporte néanmoins pas les noms de régions et de département. Il faudra quand même apparier au COG pour les avoir. Ce sont en effet des critères de sélection intéressants pour un utilisateur de données géographiques (perso je connais pas le code région d'Occitanie)

Incohérence arguments Readme

Bonjour, je suis débutant en python et surtout dans l'utilisation de package GIT. Il est donc plus que probable que l'erreur vienne de moi. Je ne trouve cependant pas où je me trompe.

Le READme propose la requête test suivante :

import cartiflette.s3

normandie = cartiflette.s3.download_vectorfile_url_all(
    values = "11",
    level="COMMUNE",
    vectorfile_format="geojson",
    decoupage="region",
    year=2022)
ax = normandie.plot()
ax.set_axis_off()

Cependant help(cartiflette.s3.download_vectorfile_url_all) renvoie :

Help on function download_vectorfile_url_all in module cartiflette.s3.s3:

download_vectorfile_url_all(values: Union[str, int, float] = '28', borders='COMMUNE', vectorfile_format='geojson', filter_by='region', year=2022, provider: str = 'IGN', source: str = 'EXPRESS-COG-TERRITOIRE', crs=None)

Les arguments level et decoupage ne semblent donc pas présents dans la fonction.

Zonages infracommunaux

  • Avec #72, on part du principe que le niveau le plus fin est la commune. C'est vrai pour certains zonages mais pas tous. Il faudra se poser la question des zonages infracommunaux dans le futur

Observable

Faire un notebook observable sera utile, ça facilitera des réutilisations

[SSL: CERTIFICATE_VERIFY_FAILED] avec cartiflette.s3.download_vectorfile_url_all

Bonjour. Je rencontre un problème avec le certificat SSL lorsque j'essaie d'utiliser cartiflette.s3.download_vectorfile_url_all :
urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)>

Je travaille sur l'application Microsoft Visual Studio. Je ne comprends pas ce qui se passe dans le détail, mais de ce que je vois SSL est un protocole de sécurité que Python gère à travers le module SSL. Il a besoin d'un certificat géré par le module certifi.

Le problème ne vient pas de certifi, il est bien à jour, j'ai désinstallé et réinstallé le module et ai même essayé une version plus ancienne, sans succès.

L'erreur a l'air courante à en croire StackOverflow (avec d'autres fonctions que celles de cartiflette), la solution la plus courante est :

import ssl

ssl._create_default_https_context = ssl._create_unverified_context

Cependant cela revient à désactiver un protocole de sécurité, aussi ne suis-je pas sûr que c'est une idée à suivre ...

Merci du suivi!

COG-CARTO par territoire

  • #50 améliore la fiabilité de la production et introduit la source COG-CARTO

cependant

  • pas encore les DROM
  • nettoyer la version qui produit COMMUNE_ARRONDISSEMENT
  • mieux gérer la casse dans les chemins (departement vs DEPARTEMENT par exemple)
  • Année 2021 COG-CARTO-TERRITOIRE

Exemple de production: 59808c7

Suggestions to facilitate contributions on this repository

In the context of Etalab helping the 10% projects to become more collaborative, here are some suggestions:

  • Add a CONTRIBUTING section to the README.md: explain who can contribute and for what (it is not necessary to provide a dedicated CONTRIBUTING.md file).
  • Add a LICENSE section to the README.md.
  • Add more tags to the GitHub page.
  • Enhance the GitHub description of the project: the current pointer to an external URL does not allow to quickly understand what this repo is about.

Rapprocher les DROM pour la finalisation des cartes

J'ai un peu réfléchi à la manière idéale de faire cette transformation. Je me dis qu'on peut vraiment tirer profit de l'aspect POO de python là (là où R serait plus contraignant). Voici ce que je me suis dit :

  • continuer à travailler sur les shapefiles dans la projection officielle donc ne pas tout harmoniser en 2154 ou 4326 en amont ;
  • créer une classe spéciale FrGeoDataFrame (inspiration de pynsee) qui s'appuie sur gpd.GeoDataFrame (comme ça toutes les opérations classiques d'un GeoDataFrame restent valident)
  • cette classe sera livrée avec : 1/ une méthode pour twister la géométrie et écrire ça dans un attribut spécial 2/ une extension de la méthode plot de GeoDataFrame qui n'utilise pas la geometry de l'objet mais cette géométrie spéciale

Format (géo)parquet

mapshaper ne supporte pas encore le parquet, il faudrait chercher comment adapter le pipeline dans ce cas

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.