On sample data, the existing renderer produces the following image:

:

(Notice the six faint vertical white lines.)

After a lot of back-and-forth, I decided the simplest solution was to round the x coordinates (the domain values) to integers so that there is no antialiasing on the vertical edges, and it produces the following image:

These are the changes I made in patch format:

- Code: Select all
`215c215`

< float transX1 = Math.round((float) domainAxis.valueToJava2D(x1, dataArea, edge0));

---

> float transX1 = (float) domainAxis.valueToJava2D(x1, dataArea, edge0);

217c217

< = Math.round((float) domainAxis.valueToJava2D(xleft, dataArea, edge0));

---

> = (float) domainAxis.valueToJava2D(xleft, dataArea, edge0);

219c219

< = Math.round((float) domainAxis.valueToJava2D(xright, dataArea, edge0));

---

> = (float) domainAxis.valueToJava2D(xright, dataArea, edge0);

Note that this problem should also manifest itself on the horizontal edges between stacked areas as well, but since those aren't usually straight lines it's not as apparent.

I posted this here because I spent a lot of time trying to figure this out, and couldn't find any answers on this forum. Hopefully this will help other people looking for the reason lines show up in their graph.