PlPlot и Javafx

Я начал использовать JavaFX для одного из моих приложений с графическим интерфейсом, которое требует научного построения трехмерных контуров и т. Д. Для процедуры построения графика я подумал использовать PlPlot, который можно использовать с Java и который отображает трехмерные графики, контуры и т. д. Я могу отображать свои данные в отдельном «X-Window» с помощью PlPlot, а мне нужно разместить график в JavaFX Pane, скажем, AnchorPane. Я могу использовать следующие команды PLPlot:

PLStream pls = new PLStream();
pls.sdev("xwin");
pls.init();
pls.env(col1Min, col1Max, col2Min, col2Max, 0, 0);
pls.line(col1, col2);
pls.end();

Я вижу, что сюжет появляется в отдельном X-Window, как если бы мне нужно было поместить его в Pane. Объявление устройства с помощью pls.sdev("xwin") не возвращает никакого дескриптора, как показано в руководстве.

Не могли бы вы дать какую-нибудь идею? Спасибо и с уважением


person vegaonline    schedule 22.02.2016    source источник


Ответы (2)


Jzy3d может рисовать контурные графики, и есть инструменты для настроить контуры.

Я демонстрирую, как запускать диаграммы Jzy3d в JavaFX здесь.

person Martin    schedule 29.02.2016
comment
Мартин, вы можете отредактировать все свои ответы jzy3d, указав свое участие в проекте (если таковое имеется). См. Как я могу ссылку на внешний ресурс удобным для сообщества способом?. - person jewelsea; 29.02.2016
comment
Привет Мартин, большое спасибо. Это были действительно хорошие сюжеты. - person vegaonline; 02.03.2016
comment
@Martin, я видел, что в вашей демонстрации вы использовали `import org.jzy3d.javafx.JavaFXChartFactory; импортировать org.jzy3d.javafx.JavaFXRenderer3d; импортировать org.jzy3d.javafx.controllers.JavaFXCameraMouseController; `. Однако в репозитории я не нашел jar для javafx. Не могли бы вы указать мне? Спасибо. - person vegaonline; 03.03.2016
comment
@vegaonline извините, я исправил загрузку :) maven .jzy3d.org/snapshots/org/jzy3d/jzy3d-javafx/1.0.0-SNAPSHOT - person Martin; 04.03.2016
comment
@vegaonline Я также исследую диаграммы, используя основные трехмерные формы JavaFX: github.com/jzy3d/FXyz-1/blob/master/src/main/java/org/jzy3d/. Еще небольшие проблемы с осями, но это многообещающе. Однако вышеупомянутая привязка JavaFX должна работать быстрее. - person Martin; 04.03.2016
comment
@Мартин, извините, что беспокою. Ваша работа действительно впечатляет, и я пытаюсь ее использовать. Как только я объявляю JavaFXChartFactory factory = new JavaFXChartFactory();, я обнаруживаю, что он сообщает об ошибке, как будто класс не найден. Можете ли вы помочь мне увидеть, чего не хватает.? Я использую все файлы jar, предоставленные и объявленные в библиотеках приложения. Спасибо. - person vegaonline; 11.03.2016

Поскольку ОП ищет любые идеи, вот хитрость (может быть, это не лучший выбор, но он сработает).

  1. Сохраните график как файл .png, используя pngcairo (драйвер Cairo PNG).

  2. Загрузите изображение в JLabel на панели:

JLabel  lblPic = new javax.swing.JLabel();
lblPic.setIcon(new javax.swing.ImageIcon("output.png"));
person s.ouchene    schedule 02.05.2016