Wie füge ich ein jzy3d-Diagramm zu JFrame hinzu, ohne ein neues zu erstellen?

Es gibt den folgenden Code, um ein jzy3d-Diagramm in JFrame zu erstellen:

public class SurfaceViewerFrame extends IconFrame {

    public SurfaceViewerFrame() {
        setResizable(false);
        //System.loadLibrary("lib/jogl2-rc10/gluegen-rt.jar");
        Settings.getInstance().setHardwareAccelerated(true);
        FormLayout layout=new FormLayout("10px, 300px, 10px", "30px, 10px, 20px, 300px, 10px");
        CellConstraints сс=new CellConstraints();

        JLabel title=new JLabel("Выходная поверхность");


        Mapper mapper = new Mapper() {
            public double f(double x, double y) {
                return x * Math.sin(x * y);
            }
        };
        // Define range and precision for the function to plot
        Range range = new Range(-300, 300);
        int steps = 80;

        // Create the object to represent the function over the given range.
        final Shape surface = Builder.buildOrthonormal(new OrthonormalGrid(range, steps, range, steps), mapper);
        surface.setColorMapper(new ColorMapper(new ColorMapRainbow(), surface.getBounds().getZmin(), surface.getBounds().getZmax(), new Color(1, 1, 1, .5f)));
        surface.setFaceDisplayed(true);
        surface.setWireframeDisplayed(false);

        // Create a chart
        Chart chart = new Chart(Quality.Advanced, "awt");
        chart.getScene().getGraph().add(surface);
        chart.addController(new CameraKeyController());

//      ChartLauncher.openChart(chart, new Rectangle(0, 0, 100, 100), "122");

        JPanel panel=new JPanel();
        panel.add(title, сс.xy(1, 1));
        panel.add((Component)chart.getCanvas(), CC.xy(1, 3));
        add(panel);
        setSize(320, 370);
        setVisible(true);
    }
}

Aber ich sehe nichts, wenn ich die Methode openChart () nicht weiterempfehle. Wenn ich das mache, gibt es ein Diagramm in meinem JFrame und einen neuen leeren JFrame. Ich will es nicht benutzen. Sagen Sie mir bitte, wie kann ich das beheben? Ich muss eine Grafik in meinem JFrame anzeigen, ohne eine neue zu erstellen.

UPDATE: Sorry, jzy3d ist eine Bibliothek zum Erstellen von 3D-Oberflächen. Und dieser Code funktioniert. Ich brauche keinen anderen LayoutManager. Bitte lies meine Frage noch einmal.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage