Would it be possible to use the Dodge transform to avoid the labels on the right to overlap each other in this example?
I tried but it seemed like the Dodge considered the whole series and not the selected value. I'm also not sure if Dodge supports specifying an extra channel (other than the opposite of its dodging).
No, I don’t think so. The dodge transform will respect the select transform (if you run it after, as in dodge(select(…))). But you can’t use the dodgeY transform to dodge/offset points that are already positioned in y. The dodgeY transform does not take a y channel as input; it computes the y-position based solely on the x-position. Adding the dodgeY transform here will simply result in the labels clustered in the middle of the chart and no longer attached to the ends of the lines.