2016-02-22 2 views
0

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

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") не возвращает никакой ручки, как показано в руководстве.

Вы можете высказать какие-либо идеи? Thanks and Regards

ответ

0

Jzy3d способен нарисовать contour plots и есть инструменты для customize контуры.

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

+0

Мартин, вы можете изменить все свои jzy3d ответов упомянуть о своей связи с проектом (если есть один). См. [Как я могу ссылаться на внешний ресурс сообществом?] (Http://meta.stackexchange.com/questions/94022/how-can-i-link-to-an-external-resource-in -a-сообщество дружеского-путь). – jewelsea

+0

Привет, Мартин, спасибо большое. Это были действительно приятные сюжеты. – vegaonline

+0

@Martin, я видел, что в вашей демонстрации вы использовали 'import org.jzy3d.javafx.JavaFXChartFactory; import org.jzy3d.javafx.JavaFXRenderer3d; import org.jzy3d.javafx.controllers.JavaFXCameraMouseController; '. Однако в репозитории я не нашел jar для javafx. Не могли бы вы назвать меня? Благодарю. – vegaonline

2

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

1) Сохраните свой участок как .png файл с помощью pngcairo (Cairo PNG Driver).

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

JLabel lblPic = new javax.swing.JLabel(); 
lblPic.setIcon(new javax.swing.ImageIcon("output.png"));