การแก้ไขสไตล์เลเยอร์ shp พร้อมกันใน QGIS?


9

ฉันมีรูปหลายเหลี่ยมในไฟล์ shp ที่ฉันต้องเปลี่ยนความกว้างของเส้น ฉันหัวเข้าร่วมพวกเขาในกลุ่มเดียว

ป้อนคำอธิบายรูปภาพที่นี่

มีวิธีในการเปลี่ยนบรรทัดด้วยสำหรับเลเยอร์ทั้งหมดในกลุ่มพร้อมกันหรือไม่

คำตอบ:


14

ด้วยความช่วยเหลือเล็กน้อยจาก Python เราสามารถตั้งค่าความกว้างของเส้นขอบสำหรับเลเยอร์ทั้งหมดในกลุ่ม "สถานะ" ของคุณเป็นค่าเฉพาะ (เช่น0.16ตามที่แสดงในภาพของคุณ)

ลองทดสอบสิ่งต่อไปนี้ในPython Console :

root = QgsProject.instance().layerTreeRoot()
state_group = root.findGroup("State")
border_width = 0.16

for layers in state_group.children():
    layer = layers.layer()
    symbols = layer.rendererV2().symbols()
    symbols[0].symbolLayer(0).setBorderWidth(border_width)
    layer.triggerRepaint()
    iface.legendInterface().refreshLayerSymbology(layer)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.