Изменение ширины обводки многоугольника PyQGIS
Я пытаюсь установить Ширину контуров озера равной нулю или изменить цвет на голубой, так как я не хочу видеть черный контур. Векторный файл представляет собой многоугольник (MultiPolygon) с именем vlayer2, и я пробовал следующие команды:
vlayer2.setStrokeWidth(0)
vlayer2.setStrokeColor([49,179,245])
vlayer2.setWidth(0)
Но я всегда получаю сообщение: «AttributeError: объект 'QgsVectorLayer' не имеет атрибута '....' ''

Ответы
Методы, которые вы пытаетесь использовать, относятся к классу QgsSimpleMarkerSymbolLayer . Перед вызовом этих методов вам необходимо получить доступ к слою символов в модуле визуализации векторного слоя.
Следующее должно работать для вас, чтобы установить цвет обводки, учитывая, что вам необходимо передать QColor
объект в этот метод:
vlayer2.renderer().symbol().symbolLayer(0).setStrokeColor(QColor(49, 179, 245))
vlayer2.triggerRepaint()
Кроме того, вы можете установить стиль обводки «Без пера». Установка ширины на 0 все равно даст ширину «линии роста волос».
vlayer2.renderer().symbol().symbolLayer(0).setStrokeStyle(Qt.PenStyle.NoPen)
vlayer2.triggerRepaint()
Я настоятельно рекомендую ознакомиться с Руководством разработчика PyQGIS, которое содержит множество полезных примеров.