If your points are closer than the widths of the dashes/dots it is like this - that's how QPainter works.
So what you need is a curve interpolation, that weeds out points. In general QwtWeedingCurveFitter offers such an algo ( Douglas-Peucker ), but is an expensive one and should better be used in advance outside of the replot cycle, when having many points.
Uwe
Bookmarks