R:图上的点未出现在数据中

Posted

技术标签:

【中文标题】R:图上的点未出现在数据中【英文标题】:R: Point On Graph Does Not Appear in Data 【发布时间】:2021-10-01 12:20:01 【问题描述】:

我正在使用 R 编程语言。我定义了一个函数,在不同的点评估了这个函数并创建了这个函数的图表:

library(plotly)
library(dplyr)
set.seed(123)

#create grid and evaluate function
input_1 <- seq(0,100,1)
input_2 <- seq(0,100,1)
input_3 <- seq(0,100,1)
input_4 <- seq(0,100,1)

my_grid <- data.frame(input_1, input_2, input_3, input_4)
my_grid$final_value = sin(input_1) + cos(input_2) + input_3 + input_4

plot_ly() %>% 
        add_trace(data = my_grid,  x=my_grid$input_1, y=my_grid$input_2, z=my_grid$input_3, type='mesh3d') %>%
        add_surface(
                z = my_grid %>% as.matrix(),
                surfacecolor = my_grid,
                cauto=F,
                cmax=max(my_grid$final_value),
                cmin=min(my_grid$final_value)
        )


         

问题: 在上面的这个情节中,我的印象是x = input_1, y = input_2, z = input_3,情节的颜色是根据“final_value”。我在 (4,100, 200.356) 的图表上突出显示了一个点。但是,如果您查看用于创建此图的数据 ("my_grid"),则数据中没有这样的点。

问题:有人可以解释一下吗?还是我对此有误解?是否可以更改“悬停文本”,以便对于该图上的任何点,它清楚地显示“input_1、input_2、input_3 和 final_value”的值?有人可以帮我澄清一下吗?

谢谢

【问题讨论】:

【参考方案1】:

让我们my_grid %&gt;% tail() 看看会发生什么,

    input_1 input_2 input_3 input_4 final_value
96       95      95      95      95    191.4134
97       96      96      96      96    192.8032
98       97      97      97      97    193.4545
99       98      98      98      98    194.6073
100      99      99      99      99    197.0406
101     100     100     100     100    200.3560

最后一个observation(100,4,200.3560),所以它确实存在。

【讨论】:

感谢您的回复!但我没有看到数字“4”? 我想我有点快!在这一点上,老实说,我有点无能为力。我什至无法使用您的data 复制plotly.com/r/3d-mesh。我现在就敲出来! 但似乎随着您的绘图,x 轴已标准化。但是在上面的链接中,相似的却不是。 是的 - 我以为我有答案了......对不起!当您找到解决方案时,请发布答案!我比较好奇! :-)

以上是关于R:图上的点未出现在数据中的主要内容,如果未能解决你的问题,请参考以下文章

如何在 R 中更改网络图上的标签?

通过选择散点图上的点来更新虚线表

EXCEL中如何把柱状图和线状图合并在一起

eclipse中的web project项目运行 Run As → 1 run on server 出现图上的情况

R语言可视化及作图2--低级绘图函数

更改堆积图上的标签