#r #histogram #plot3d
#r #гистограмма #plot3d
Вопрос:
Как следует из моего названия, я пытаюсь создать 3D-гистограмму с помощью пакета Plot3D. Ниже приведен минимальный рабочий (или, скорее, не рабочий) пример проблемы, с которой я столкнулся:
library(plot3D)
x = runif(10000)/2
y=runif(10000)
cuts = c(0, 0.2, 0.4, 0.6, 0.8, 1)
x_cut = cut(x, cuts)
y_cut = cut(y, cuts)
xy_table = table(x_cut, y_cut)
hist3D(z=xy_table, ticktype = "detailed")
В результате получается следующее изображение:
Как вы можете видеть на изображении, ячейки гистограммы выходят за пределы [0,1] x [0,1]. Могу ли я в любом случае заставить ячейки точно совпадать с отметками на оси? То есть я хотел бы, чтобы график правильно представлял, что все точки данных имеют значения x и y от 0 до 1. Глядя на график сейчас, можно было бы предположить, что ячейка, содержащая начало координат, например, может также содержать точку данных (-0.1, 0). Это не может произойти в данных, которые я пытаюсь отобразить, и мне нужна ось, чтобы передать это.
Я провел весь день, играя с различными параметрами оси и еще много чего, но не могу заставить его работать. Например, если я попытаюсь построить график с помощью команды
hist3D(z=xy_table, ticktype = "detailed", xlim=c(0,1), ylim=c(0,1))
Чем я получаю что-то еще хуже:
Я чувствую, что, должно быть, упускаю что-то очевидное, но я просто не вижу, что это такое. Если у кого-нибудь есть ответ, пожалуйста, поделитесь. И спасибо, что нашли время, чтобы прочитать мой вопрос.