I looked at the previous post and resolve, but the link does not work.
My code is:
package org.jzy3d.demos.scatter;
import java.awt.BorderLayout;
import java.awt.Panel;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import org.jzy3d.chart.Chart;
import org.jzy3d.colors.Color;
import org.jzy3d.maths.Coord3d;
import org.jzy3d.plot3d.primitives.Scatter;
public class EmbedNewtTest {
public static void main(String args[]) {
// Create a test chart.
int size = 100000;
Coord3d[] points = new Coord3d[size];
for (int i=0; i<size; i++) {
points[i] = new Coord3d(
(float) Math.random() - 0.5f,
(float) Math.random() - 0.5f,
(float) Math.random() - 0.5f);
}
Scatter scatter = new Scatter(points);
scatter.setColor(Color.BLUE);
//Chart chart = new Chart("newt");
Chart chart = new Chart("newt");
chart.getAxeLayout().setMainColor(Color.WHITE);
chart.getView().setBackgroundColor(Color.BLACK);
chart.getScene().add(scatter);
// Embed into Swing.
JFrame frame = new JFrame();
//JPanel panel = new JPanel();
JPanel panel3d = new JPanel();
panel3d.setLayout(new java.awt.BorderLayout());
panel3d.add((JComponent)chart.getCanvas());
frame.setLayout(new BorderLayout());
//panel.add((Panel) chart.getCanvas());
frame.setContentPane(panel3d);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.pack();
frame.setTitle("Embed Newt Test");
frame.setVisible(true);
}
}
My error is:
Exception in thread "main" java.lang.RuntimeException: unhandled canvas! org.jzy3d.plot3d.rendering.canvas.CanvasNewt[panel0,0,0,0x0,invalid,layout=java.awt.FlowLayout]
at org.jzy3d.plot3d.rendering.view.View.<init>(View.java:103)
at org.jzy3d.chart.ChartView.<init>(ChartView.java:31)
at org.jzy3d.factories.ViewFactory.getInstance(ViewFactory.java:11)
at org.jzy3d.chart.ChartScene.initializeChartView(ChartScene.java:51)
at org.jzy3d.chart.ChartScene.newView(ChartScene.java:40)
at org.jzy3d.plot3d.rendering.canvas.CanvasNewt.<init>(CanvasNewt.java:27)
at org.jzy3d.chart.Chart.initializeCanvas(Chart.java:83)
at org.jzy3d.chart.Chart.<init>(Chart.java:70)
at org.jzy3d.chart.Chart.<init>(Chart.java:59)
at org.jzy3d.chart.Chart.<init>(Chart.java:55)
at org.jzy3d.demos.scatter.EmbedNewtTest.main(EmbedNewtTest.java:31)
I really appreciate it.
When I change "newt" to "swing", I will get a window, but it does not show the scatter plot.
Thanks again.
Best,
Nina