Вращайте анимированное изображение в gnuplot с помощью мыши
Я создал несколько анимированных трехмерных картинок с помощью gnuplot. У меня возникли проблемы с отображением всех распределенных данных в GIF-файлах.
Использование команды "set view" не является оптимальным, поскольку разбивка автоматизирована, и данные варьируются от графика к графику, поэтому, когда одно представление может работать для одного набора данных, оно не будет работать для другого набора данных.
Я думаю, что было бы хорошо позволить пользователю поворачивать ось с помощью его / ее мыши, чтобы увидеть разные углы обзора. Я знаю, что это возможно, например, в терминале x11, но можно ли это сделать с помощью GIF? Возможно, это возможно с помощью терминала canvas и JavaScript.
Другим вариантом может быть автоматическое вращение изображения вокруг оси, чтобы при загрузке оно уже вращалось и продолжало вращаться, когда данные анимированы.
Есть ли способ сделать это в gnuplot?
1 ответ
Ваш второй вариант возможен. Вы можете установить угол обзора в каждой итерации.
set terminal gif animate delay 5 loop 0 optimize
set output "rot.gif"
unset surface
set pm3d at s
set label "sin(x)" at screen 0.7, 0.9
n = 100
do for [i=1:n] {
set view 60, i*360/n
splot sin(x) notitle
}
set output
Заметки:
- Ключ перемещается от итерации к итерации, поэтому я заменил его фиксированной меткой.
i*360/n
создает один полный поворот сюжета за одну полную анимацию