Bagaimana cara mengubah warna layer vektor di pyQGIS?


10

Apakah mungkin untuk mengubah warna sambil menambahkan layer vektor? Saya memiliki layer vektor dengan area air dan ingin memuatnya dengan gaya warna biru. Lapisan ditambahkan dengan:

QgsMapLayerRegistry.instance().addMapLayer(self.vlayer)

Bisakah saya mengubah warna setelah atau saat memuat?

Jawaban:


11

Anda dapat menggunakan sesuatu seperti ini:

symbols = self.vlayer.rendererV2().symbols()
symbol = symbols[0]
symbol.setColor(QColor.fromRgb(50,50,250))

Kerja bagus!


7

Akhirnya dengan kode ini perubahan warna layer berfungsi untuk saya:

QgsMapLayerRegistry.instance().addMapLayer(self.vlayer)       
symbols = self.vrlayer.rendererV2().symbols()
symbol = symbols[0]
symbol.setColor(QtGui.QColor.fromRgb(50,50,250))
qgis.utils.iface.mapCanvas().refresh() 
qgis.utils.iface.legendInterface().refreshLayerSymbology(self.vlayer)

Anda harus memuat ulang MapCanvas dan panel lapisan juga.


Kode ini menyelamatkan saya dari painfull research => qgis.utils.iface.legendInterface (). RefreshLayerSymbology (self.vlayer)
Kostadin
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.