0

我正在查看 IsoSurface 的给定示例代码。我想创建一个看起来类似于示例代码的图表,但我无法重新创建所需的数据点(因为它使用的是 fillSampleValues())。该示例(如下所示)使用什么值?谢谢!

编辑:我对如何使它变平以及如何创建峰值特别感兴趣。当我尝试输入自己的 x、y、z 值时,图表不显示。我猜那是因为我没有输入有效值。这就是为什么我很想知道 fillSampleValues 是什么以及它是如何创建图表的。

series = Series.createNewSeries(chart.getChart(), IsoSurface.class, null);
        series.fillSampleValues();
        chart.addSeries(series);
        chart.getLegend().setAlignment(LegendAlignment.BOTTOM);
        chart.getHeader().setText("ISOSurface Series");
        chart.getHeader().getFont().setSize(14);
        chart.getAspect().setOrthogonal(false);
        chart.getAspect().setZoom(70);              
        chart.getAspect().setRotation(320);
        chart.getAspect().setElevation(340);
        chart.getAspect().setPerspective(37);
        chart.getAspect().setChart3DPercent(90);
        ((IsoSurface) series).setPaletteStyle(PaletteStyle.RAINBOW);
4

1 回答 1

1

Surface 系列中的随机值按以下示例计算:

Surface surf1 = new Surface(tChart1.getChart());
int nValues = 10;
for (int z=1; z<=nValues; z++) {
    for (int x=1; x<=nValues; x++) {
        surf1.add(x, 0.5 * Utils.pow(Math.cos(x / (nValues * 0.2)), 2) +
            Utils.pow(Math.cos(z / (nValues * 0.2)), 2) -
            Math.cos(z / (nValues * 0.5)), z);
    }
}
于 2013-07-02T14:04:39.713 回答