画三维曲面图 java_使用Jzy3d绘制散点和曲面图

该博客演示了如何使用Java中的Jzy3d库来创建3D散点图和曲面图。首先生成随机坐标点,然后利用Builder构建Delaunay三角网生成曲面,并应用ColorMapRainbow进行颜色映射。接着,通过MultiColorScatter类创建3D散点图,并设置背景颜色与轴的颜色。最后展示两个独立的图表,分别显示3D曲面和散点。
摘要由CSDN通过智能技术生成

import java.util.ArrayList;

import java.util.List;

import org.jzy3d.chart.Chart;

import org.jzy3d.chart.ChartLauncher;

import org.jzy3d.colors.Color;

import org.jzy3d.colors.ColorMapper;

import org.jzy3d.colors.colormaps.ColorMapRainbow;

import org.jzy3d.maths.Coord3d;

import org.jzy3d.plot3d.builder.Builder;

import org.jzy3d.plot3d.primitives.MultiColorScatter;

import org.jzy3d.plot3d.primitives.Shape;

import org.jzy3d.plot3d.rendering.canvas.Quality;

public class Jzy3dPlot4 {

public static void main(String[] args) {

int size = 1000;

double x, y, z;

List lista = new ArrayList();

for (int i = 0; i < size; i++) {

x = (float) Math.random() - 0.5f;

y = (float) Math.random() - 0.5f;

z = (float) Math.random() - 0.5f;

lista.add(new Coord3d(x, y, z));

}

// Create surface 曲面

Shape surface = Builder.buildDelaunay(lista);

surface.setColorMapper(new ColorMapper(new ColorMapRainbow(),

surface.getBounds().getZmin(),

surface.getBounds().getZmax(), new Color(1, 1, 1,

.5f)));

surface.setFaceDisplayed(true);

surface.setWireframeDisplayed(false);

surface.setWireframeColor(Color.BLACK);

Chart chart = new Chart(Quality.Advanced);

chart.getScene().getGraph().add(surface);

ChartLauncher.openChart(chart);

Coord3d[] points = new Coord3d[size];

lista.toArray(points);

// Create scatter 散点

MultiColorScatter scatter = new MultiColorScatter(points, new

ColorMapper(new ColorMapRainbow(), -0.5f, 0.5f));

chart = new Chart();

chart.getAxeLayout().setMainColor(Color.WHITE);

chart.getView().setBackgroundColor(Color.BLACK);

chart.getScene().add(scatter);

ChartLauncher.openChart(chart);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值