Suite

Attribut CategoryList pour le dégradé de couleurs prédéfini dans pyQgs


J'essaie de styliser ma couche vectorielle dans QGIS à l'aide du code python suivant :

layer = iface.activeLayer() myStyle = QgsStyleV2().defaultStyle() defaultColorRampNames = myStyle.colorRampNames() rampe = myStyle.colorRamp(defaultColorRampNames[1]) field="count" renderer = QgsCategorizedSymbolRendererV2(field,[]) renderer. setSourceColorRamp(ramp) layer.setRendererV2(renderer) if iface.mapCanvas().isCachingEnabled(): layer.setCacheImage(None) else: iface.mapCanvas().refresh() layer.triggerRepaint()

Mais lors de l'exécution de ce code, toutes les fonctionnalités sont colorées en blanc. Maintenant, je sais que c'est parce que je passe un deuxième argument vide à QgsCategorizedSymbolRendererV2(champ,[]).Le problème est que je ne suis pas en mesure de comprendre ce qu'il faut passer comme deuxième argument si je veux utiliser le dégradé de couleurs par défaut.


D'accord… j'ai trouvé un moyen de faire ça.

j'ai dû utiliser QgsGraduatedSymbolRendererV2 plutôt que QgsCategorizedSymbolRendererV2

Voici le code :

layer = iface.activeLayer() field="count" myRenderer = QgsGraduatedSymbolRendererV2() myRenderer.setClassAttribute(field) myRenderer.setMode(QgsGraduatedSymbolRendererV2.EqualInterval) myRenderer.updateClasses(layer,QgsRendererVquatedSymbole(),QgsGraduatedSymbole() () defaultColorRampNames = myStyle.colorRampNames() ramp = myStyle.colorRamp(defaultColorRampNames[8]) myRenderer.updateColorRamp(ramp) layer.setRendererV2(myRenderer) iface.mapCanvas().isCachingEnabled(): layer.setCacheImage(None) else : iface.mapCanvas().refresh() layer.triggerRepaint()


Voir la vidéo: COMMENT CREER UN LOGO FACILEMENT AVEC PHOTOSHOP? TUTO YOUTUBE FR (Octobre 2021).