Я использую Jfreechart для создания диаграммы с разбивкой по областям. Я использую класс StackedXYAreaChart.Jfreechart - можем ли мы установить форму для datapoint в StackedAreaChart?
Я хотел знать, можем ли мы рисовать фигуры в точках данных для StackedAreaChart (это линейная диаграмма, которую мы можем обозначить каждой точкой данных, установив SetSeriesShapes()).
Метод setSeriesShape() не работает. У кого-нибудь есть идея?
Вот что я пытался до сих пор (Пожалуйста, не комментируйте, что я пустой набор данных Я черчения динамический график и ряд будет заполнен позже.):
incomingData = new TimeTableXYDataset();
final JFreeChart incomingDataChart = ChartFactory.createStackedXYAreaChart(
"Chart", "Time", "Payload (In Bytes)", incomingData, PlotOrientation.VERTICAL, true, true, false);
final StackedXYAreaRenderer renderChart = new StackedXYAreaRenderer();
renderChart.setSeriesPaint(0, Color.decode("#339900"));
renderChart.setSeriesPaint(1, Color.decode("#CC9933"));
renderChart.setSeriesPaint(2, Color.decode("#33CCFF"));
renderChart.setSeriesPaint(3, Color.decode("#FF6600"));
renderChart.setSeriesShape(0, new Ellipse2D.Double(-3, -3, 10, 10));
renderChart.setSeriesShape(1, new Ellipse2D.Double(-3, -3, 10, 10));
renderChart.setSeriesShape(2, new Ellipse2D.Double(-3, -3, 10, 10));
renderChart.setSeriesShape(3, new Ellipse2D.Double(-3, -3, 10, 10));
incomingDatachart.getPlot().setRenderer(renderChart);
'StackedXYAreaRenderer # setSeriesShape()' работает для меня; отредактируйте свой вопрос, включив в него [полный пример] (http://stackoverflow.com/help/mcve), в котором представлена проблема, которую вы описываете. – trashgod
@trashgod - область области заменяется линией, которая покрывает диаграмму области. Я все равно понял свой ответ. Решение: StackedXYAreaRenderer renderer = новый StackedXYAreaRenderer (StackedXYAreaRenderer.AREA_AND_SHAPES); – chrisrhyno2003