当前位置: 首页 > 知识库问答 >
问题:

Jfreechart-我们可以在StackedareaChart中设置数据点的形状吗?

罗韬
2023-03-14

我正在使用Jfreechart制作堆叠面积图。我正在使用类StackedXYAreaChart。

我想知道我们是否可以在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);

共有2个答案

谢夜洛
2023-03-14

找到了解决方案:使用下面的语句

StackedXYAreaRenderer renderChart = new StackedXYAreaRenderer(StackedXYAreaRenderer.AREA_AND_SHAPES);

然后用,,

renderChart.setSeriesShape(index, Shape);
钦宏义
2023-03-14

您需要将StackedXYareaRenader的类型设置为“形状和线条”。默认情况下,渲染器不显示形状。

StackedXYAreaRenderer renderer = new StackedXYAreaRenderer(StackedXYAreaRenderer.SHAPES_AND_LINES);
 类似资料:
  • 我正在使用jFreeChart绘制一个折线图,它是由一条直线连接的一系列(x,y)值。 但问题是表示数据点的形状,一个圆或一个矩形太大了,因为我在一个数列中有很多值。你可以在这个截图中看到它的样子: 此外,我了解到,当我调整图表面板的大小时,表示数据点的形状不会像绘图的其余部分那样缩放。

  • 问题内容: 可以说我有一些状态依赖于其他状态(例如,当A更改时,我希望B更改)。 创建一个观察A并将B设置在useEffect钩内的钩子是否合适? 效果是否会级联,从而在我单击按钮时会触发下一个效果,从而导致b发生变化,从而导致第二个效果在下一次渲染之前触发?这样构造代码是否有性能下降? 问题答案: 效果始终在渲染阶段完成后执行,即使您将setState放在一个效果中,另一个效果也将读取更新后的状

  • 我们能在SpringAMQP中的消费者端设置超时吗? 我们有一个用例,AMQP消息到达消费者端 有没有办法让使用者(TestListener)代码超时,这样Listener就不会在SpringAMQP中被挂起

  • 我有数据框中的示例数据如下 我们可以生成散点图(或任何折线图等)只有这一张唱片。 我尝试了多种方法,但我得到了 在X轴中:日期 在Y轴:两个点,一个用于Emp计数,另一个用于深度计数

  • 问题内容: 给定:int x [3] = {11,22,33}; 如何将其作为键值保存为二进制数据并获取 hiredis提供了有关如何设置二进制安全字符串的示例 但是其他数据又如何获取呢? 问题答案: 将二进制数据直接存储在远程存储中而不进行任何编组处理是灾难的根源。我不建议这样做:可以使用许多序列化协议来使二进制数据独立于平台。 也就是说,回答您的问题: 请注意,只有在确保所有Redis客户端在

  • 问题内容: 我们可以像使用一样设置webdriver的速度吗?我们可以使用吗? 我正在用C#编写代码。 问题答案: 此功能不再存在。我不得不问你为什么要它呢?它不再存在的原因是因为不再需要它了,因为添加了额外的功能,例如隐式等待和通过fluentwait等方式进行显式等待,以确保在尝试操作之前发生条件。 如果您详细说明了为什么需要这样做(也许在另一个问题中,因为该问题可能对其他人仍然有用),我相信