1

When I go to layer --> properties --> Legend, I can add text on symbols from an expression like round($length , 5).

After reading the document here https://qgis.org/pyqgis/3.0/core/Legend/QgsLegendSymbolItem.html#qgis.core.QgsLegendSymbolItem.setSymbol, I tried to code it as below.

symbols = QgsSymbol.defaultSymbol(line_layer.geometryType())
QgsLegendSymbolItem(symbols, "$length").setSymbol(symbols)

and it gives me error like

TypeError: QgsLegendSymbolItem(): arguments did not match any overloaded call: overload 1: too many arguments overload 2: not enough arguments overload 3: argument 1 has unexpected type 'QgsLineSymbol'

I want to do this using PyQGIS but I am having no luck, My layer is categorized into features by feature id.

I am an intern and fairly new to PyQGIS.

I want it to have like this enter image description here

0

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.