I used [the following][1] link to create labels with leaders, but since I have a polyline layer I used a different expression for the Geometry Generator:

    make_line(
      centroid($geometry),
      make_point( "auxiliary_storage_labeling_positionx" , "auxiliary_storage_labeling_positiony" )
    )

It appears to work, but looks quite ugly, where some of the leaders go past the geometry centroid as follows:

[![enter image description here][2]][2]

And others fail to reach it:

[![enter image description here][3]][3]

Why does this occur and how can I fix it?

Thanks
  [1]: https://gist.github.com/kgjenkins/1af82a8ffdc3c99bb886e6cd9cdc298f
  [2]: https://i.sstatic.net/CSngW.jpg
  [3]: https://i.sstatic.net/PVECj.jpg