Отображение нескольких графиков одновременно с persp3d - PullRequest
0 голосов
/ 02 мая 2019

Я получил много графиков спектральных данных с помощью функции persp3d и с помощью open3d я могу открыть их в разных окнах (см. Ниже).Мой вопрос: есть ли возможность открыть их в одном и том же окне, указав количество строк и столбцов?И если да, есть ли возможность, что вращение, которое я выполняю с помощью мыши, применяется ко всем отображаемым графикам?

Ниже я уже нашел способ открывать их в разных окнах, не перекрывая друг друга, чтобы я мог изучитьони отдельно (в коде: «t_ number » и «w» - векторы, соответствующие матрице «F number » соответственно).

Я пытался это сделатьс помощью команды plot3d и mfrow3d, в результате чего в одном окне появляется множество графиков (например, ответ, отправленный на на этот вопрос , но функция plot3d не способна выдавать достаточные графики данных (спектральные данные).не похожи на те же данные, что и в persp3d).

   open3d(
    persp3d(t_134, w, F134, col = col,
               xlab = "", ylab = "", zlab = "", main = "F134", 
      )
    )
    open3d(
     persp3d(t_135, w, F135, col = col,
               xlab = "", ylab = "", zlab = "", main = "F135"
      )
    )
    [...]

Как я могу построить их в одном окне и повернуть их все одинаково?

1 Ответ

0 голосов
/ 02 мая 2019

Вы используете open3d( ... plot function ...) неправильно.Аргументы open3d управляют характеристиками окна.Вы не должны передавать rgl вывод результатов на него.

Чтобы открыть несколько графиков в одном окне, после правильного вызова open3d, вызовите mfrow3d(rows, cols, sharedMouse = TRUE), чтобы настроить массив графиков.Все они будут реагировать на действия мыши в любом из них.

Например:

library(rgl)
x <- rnorm(100)
y <- rnorm(100)
z <- rnorm(100)
open3d()
mfrow3d(2, 2, sharedMouse = TRUE)
plot3d(x, y, z, col = "red")
plot3d(x, y, z, col = "green")
plot3d(x, y, z, col = "blue")
plot3d(x, y, z, col = "yellow")

screenshot

Существуют другие функции, есливам не нужен массив графиков одинакового размера: layout3d и т. д.

...