3D-черчение в Ubuntu

3405
Bakhtiyor

У меня установлена ​​Ubuntu 10.10, и мне нужно построить 3D-графику.

Я установил несколько бесплатных приложений, доступных в хранилище, таких как QtiPlot и GNU Octave. Я обнаружил и создал следующую графику. Гауссова функция

Теперь я должен показать на том же графике положение результатов моего эксперимента, которые состоят из элементов с тремя параметрами: координаты X, Y и Z, которые были рассчитаны с помощью той же функции, что и на рисунке выше.

Есть идеи сделать это? Будет лучше, если вы предложите решение в бесплатных приложениях, потому что есть несколько проприетарных приложений, таких как Maple или MATLAB.

ОБНОВЛЕНИЕ 1

Окончательный результат должен быть примерно таким:

альтернативный текст

4

3 ответа на вопрос

0
nik

Посмотрите на matplotlib от sourceforge.
Существует простое расширение для 3D-графики mplot3d.

Набор инструментов mplot3d добавляет простые возможности трехмерного построения к matplotlib, предоставляя объект оси, который может создавать 2-мерную проекцию трехмерной сцены. В конце он создает список 2d строк и патчей, которые рисуются обычным кодом matplotlib. Таким образом, полученный график будет выглядеть так же, как и обычные 2D-графики.

Вы можете проверить некоторые образцы по этой ссылке, чтобы увидеть, работает ли он для вас.

0
nik

Есть PLplotв Sourceforge.
Вот ясная ссылка .
Я не использовал его и не проверил Maverickстабильность.

0
Breakthrough

You can use gnuplot to create vector 3D graphs. Here is one example taken from the 3D surface demos from gnuplot 4.6:

enter image description here

With the corresponding script to generate the plot:

# # $Id: surface1.dem,v 1.11 2004/09/17 05:01:12 sfeam Exp $ # set samples 21 set isosample 11 set xlabel "X axis" offset -3,-2 set ylabel "Y axis" offset 3,-2 set zlabel "Z axis" offset -5 set title "3D gnuplot demo" set label 1 "This is the surface boundary" at -10,-5,150 center set arrow 1 from -10,-5,120 to -10,0,0 nohead set arrow 2 from -10,-5,120 to 10,0,0 nohead set arrow 3 from -10,-5,120 to 0,10,0 nohead set arrow 4 from -10,-5,120 to 0,-10,0 nohead set xrange [-10:10] set yrange [-10:10] splot x*y 

If you look through the gnuplot documentation, there are a few ways to draw spheres as well.