2012-10-30 18 views
5

Utworzyłem wykres warstwowy ułożony. Na wykresie pojawiają się pionowe białe linie. Muszę usunąć pionowe białe linie. Jak to zrobić? Dołączono łącze do obrazu.JfreeChart: Konieczne usunięcie pionowych białych linii w ułożonych warstwach

vertical lines http://s15.postimage.org/wa4pje8gr/jfreechart.png

+1

Proszę edytować swoje pytanie obejmują [sscce] (http: //sscce.org/), który pokazuje problem, który zilustrowałeś. – trashgod

+0

Cross-posted [tutaj] (http://www.jfree.org/forum/viewtopic.php?f=3&t=115913). – trashgod

Odpowiedz

1

Heyy Vegeta teraz będziesz latał w niebie ... Mam rozwiązanie twojego problemu.

Zastępuje obiekt StackedAreaRenderer, aby narysować ścieżkę w pojedynczej ścieżce. Zasadniczo wykres jest narysowany przez połączenie dwóch wielokątów, wielokąty są naprzemiennie lewe i prawe, więc jeśli zrobisz lewy = prawy wielokąt, nie będzie żadnych przerw. Wyszło mi to na myśl, ty też spróbować. Mam nadzieję, że twój szef będzie teraz szczęśliwy.

Oto sztuczka

GeneralPath left = new GeneralPath(); 
GeneralPath right = left; 
+0

świetne rozwiązanie ..... koleś !!! to zadziałało dla mnie !! Dzięki ... – vegeta

+0

Działa dobrze. Ten kod musi zostać zastąpiony w klasie 'StackedXYAreaRenderer2'. –

2

Spójrz na this. Problem jest związany z efektem antyaliasingu. Rozwiązanie nie jest łatwe.

0

po tej linii:

JFreeChart objChart = ChartFactory.createStackedBarChart(
       title, 
       titleX, 
       titleY, 
       objDataset, 
       PlotOrientation.VERTICAL, 
       true, 
       true, 
       false 
); 

CategoryPlot plot = (CategoryPlot) objChart.getPlot(); 

BarRenderer renderer = ((BarRenderer) plot.getRenderer()); 
renderer.setBarPainter(new StandardBarPainter()); 

StandardBarPainter Style dont have "białą linię"

Powiązane problemy