У меня нет подсказок о том, как добавить заголовок к 3D-графику с помощью rgl

#r #rgl

#r #ргл

Вопрос:

Я перепробовал их все, но уверен, что делаю что-то не так. Я просто хочу добавить заголовок, xlabel, ylabel, zlabel. Я также хотел бы установить 5 значений, чтобы создать представление о том, каковы значения (что-то, что автоматически появилось в bbox (но я не хочу это использовать, я доволен прозрачным полем).).

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

 rgl.viewpoint(theta = 0, phi = 0, fov = 60, zoom = 0.7)

rgl.bg(color = "white")

box3d()

axes3d(edges = "bbox", labels = TRUE, tick = TRUE, nticks = 5, box = FALSE, expand = 1.03, specular = "red")

title3d(main= "3D cluster visualization", xlab="Annual Income", ylab="Spending Score", zlab="Age", line = 10, outer = TRUE)
 

Комментарии:

1. Основная проблема заключается в том, что вы не нанесли никаких данных. Прямоугольник и оси адаптируются к диапазону данных; если вы сначала нанесете это, вы увидите то, что хотите. Вторая проблема заключается в том, что вы использовали rgl.viewpoint and rgl.bg вместо view3d and bg3d . rgl.* Функции портят работу следующих функций.

Ответ №1:

Добавьте bgplot3d() в свой код. Это позволяет вам помещать объекты построения base-R на rgl 3D-график. Вам придется поиграть с настройками, чтобы они соответствовали вашим потребностям.

 require(rgl)
rgl.viewpoint(theta = 0, phi = 0, fov = 60, zoom = 0.7)
rgl.bg(color = "white")
plot3d(x=1:4, y=1:4, z=1:4, type='s')
axes3d(edges = "bbox", labels = TRUE, tick = TRUE, nticks = 5, box = FALSE, expand = 1.03, specular = "red")
bgplot3d({
  plot.new()
  title(main = 'This is the main title', line = 2)
  mtext(side = 1, 'Here is my subtitle', line = 5)
})