http://statisticsr.blogspot.de/2008/10/some-r-functions.html

я есть 3D-набор данных:

data = data.frame(
    x = rep( c(0.1, 0.2, 0.3, 0.4, 0.5), each=5),
    y = rep( c(1, 2, 3, 4, 5), 5)
)

data$z = runif(
    25,
    min = (data$x*data$y - 0.1 * (data$x*data$y)),
    max = (data$x*data$y + 0.1 * (data$x*data$y))
)

data
str(data)

И я хочу построить это, но встроенные функции R alwyas дают ошибку

ожидается увеличение значений 'x' и 'y'

# ### 3D Plots ######################################################
# built-in function always give the error
#    "increasing 'x' and 'y' values expected"
demo(image)
image(x = data$x, y = data$y, z = data$z)

demo(persp)
persp(data$x,data$y,data$z)

contour(data$x,data$y,data$z)

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

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

# ### 3D Scatterplot ######################################################
# Nice plots without surface maps?
install.packages("scatterplot3d", dependencies = TRUE)
library(scatterplot3d)
scatterplot3d(x = data$x, y = data$y, z = data$z)

# ### 3D Scatterplot ######################################################
# Only to play around?
install.packages("rgl", dependencies = TRUE)
library(rgl)
plot3d(x = data$x, y = data$y, z = data$z)
lines3d(x = data$x, y = data$y, z = data$z)
surface3d(x = data$x, y = data$y, z = data$z)

Почему мои наборы данных не принимаются встроенными функциями?

Спасибо за вашу помощь,

Sven

Ответы на вопрос(5)

Ваш ответ на вопрос