Fractionner un fichier de formes en fichiers distincts pour chaque fonction à l'aide de QGIS / GDAL / SAGA?

33

J'ai un fichier de formes polyligne avec environ 20 types de routes.

J'aimerais savoir comment créer automatiquement un fichier vectoriel pour chaque fichier.

Je sais comment procéder à l'aide d'ArcGIS for Desktop - reportez-vous à la section Exportation d'une classe d'entités vers plusieurs classes d'entités en fonction des valeurs de champ à l'aide d'ArcGIS for Desktop?

Comment puis-je le faire en utilisant QGIS, GDAL, SAGA, etc.?

Bobo
la source

Réponses:

45

Dans QGIS 2.8.1, le menu Vecteur contient un outil permettant de fractionner un jeu de données en fonction d'un attribut.

Regarder dans Vector > Data Management Tools > Split Vector Layer...

outil de calque vectoriel divisé dans QGIS 2.8.1

C'est un outil de base qui devrait fonctionner si vous ne voulez pas recourir à des plugins ou à des outils dans Processing; à moins qu'ils offrent des fonctionnalités supplémentaires dont vous avez besoin.

SaultDon
la source
1
Contrairement aux autres outils vectoriels, celui-ci n’ajoute pas les fichiers au projet et vous devez sélectionner un dossier de sortie avec Browselequel les rechercher ultérieurement.
AndreJ
5

Quantum GIS a un plugin appelé ShapefileSplitter , qui le fait.

oeon
la source
3

Utiliser 'Split Vector Layer' dans la boîte à outils générale Vector

jbalk
la source
1

Vous pourriez envisager une saga gis (soit directement, soit par le biais de sextante in qgis). Il contient un module qui divisera une forme par attribut (formes / outils / divise une table / forme par attribut).

johanvdw
la source
1

Dans la boîte à outils de traitement de QGIS, consultez les exemples de scripts de la section Scripts. Vous trouverez le script intitulé "Scinder le vecteur couche par attribut". Cela fera ce dont vous avez besoin.

Ariel
la source
2
est-ce différent du plugin suggéré par @oeon?
matt wilkie
@mattwilkie est un algorithme qui vient naturellement avec QGIS. Pas besoin d'installer un plug in pour ça!
Stophface