如何使用更少的包绘制二元正态分布的表面和轮廓

2024-04-16

我将绘制二元正态分布的 3D 曲面及其轮廓(可以是任何二元正态分布)。我想用persp and contour在我的画中。 我在网上搜索了一下,但发现了很多方法。大多数人都使用过一些软件包。但我想以使用更少的软件包甚至不安装任何软件包的方式来执行此操作(但是,我不知道这是可能的)。您能否通过二元正态分布的示例向我展示您自己的方式? [更少的包,更好的解决方案]。事实上,我希望看到绘制二元正态分布的表面和轮廓的最简单方法。


只要您准备好编写自己的代码来执行此操作,您就可以在 R 中执行任何您喜欢的操作,而无需使用包。只需几行 R 代码即可实现二维表面的可视化persp and contour, but 生成表面(即创建二维密度图)并不是微不足道的。

以下是如何仅使用以下命令生成二维二元正态分布曲面:mnormt包(按照评论中的要求)。对于这个例子,我创建了一个虚拟方差-协方差矩阵。

library(mnormt)

x     <- seq(-5, 5, 0.25) 
y     <- seq(-5, 5, 0.25)
mu    <- c(0, 0)
sigma <- matrix(c(2, -1, -1, 2), nrow = 2)
f     <- function(x, y) dmnorm(cbind(x, y), mu, sigma)
z     <- outer(x, y, f)

contour(x, y, z)

persp(x, y, z, theta = -30, phi = 25, 
      shade = 0.75, col = "gold", expand = 0.5, r = 2, 
      ltheta = 25, ticktype = "detailed")

Created on 2020-06-17 by the reprex package https://reprex.tidyverse.org (v0.3.0)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用更少的包绘制二元正态分布的表面和轮廓 的相关文章

随机推荐

  • 从 vueJS 方法调用 setTimeout() 不起作用

    我试图允许用户从应用程序重置或关闭给定服务器 我现在正在开发界面 并希望向用户提供有关正在发生的事情的消息 我显示数据对象中定义的消息来指示所采取的操作 我使用 setTimeout 来切换重置 消息和重置消息 请参阅以下方法 system
  • 命令键的 jQuery 键代码

    我读过了jQuery 事件按键 按下了哪个键 https stackoverflow com questions 302122 jquery event keypress which key was pressed and 如何使用 jqu
  • python3.8中的最终注释和装饰器

    由于 Python 3 8 即将发布 我只是想知道两者之间的区别最终装饰器和最终注释 在 Python 3 8 中 Python 类型提示功能 体现为typing module https docs python org 3 library
  • Vim:如何滚动绑定光标线?

    Vim 的分割窗口视图中的两个窗口可以相互绑定滚动通过设置 set scrollbind对于他们俩来说 完成此操作后 如果我在一个窗口中向下滚动光标 其他窗口也会随之向下滚动 但是 两个窗口中的光标并未相互绑定 我用过 set cursor
  • DdlGenerator 构造函数不需要参数?

    我想对我的数据库操作进行单元测试 我发现这段代码 https gist github com nboire 2819920 但是 我收到以下错误 CityGame test info Compiling 2 Java sources to
  • 当设备令牌过期时,是否会自动从 FCM 设备组中删除? [复制]

    这个问题在这里已经有答案了 我对 Firebase Cloud Messaging 还很陌生 而且我还没有能够得到这个问题的满意答案 另外 抱歉 所有的全部停止 不幸的是我在 2017 年买了一台 MacBook 苹果决定用它的键盘进行实验
  • 如何将 dict 转换为 unicode JSON 字符串?

    使用标准库对我来说似乎不可能json模块 使用时json dumps它会自动转义所有非 ASCII 字符 然后将字符串编码为 ASCII 我可以指定它不转义非 ASCII 字符 但是当它尝试将输出转换为 ASCII 时它会崩溃 问题是 我不
  • 基于其他阵列形状的零填充阵列

    我有 K 个特征向量 它们都共享维度 n 但具有可变维度 m n x m 他们都生活在一个列表中 to be padded to be padded append np reshape np arange 9 3 3 array 0 1 2
  • 获取带有 mysqli 结果的行数组

    我需要从结果对象中获取所有行 我正在尝试构建一个包含所有行的新数组 这是我的代码 sql new mysqli config host config user config pass config db name if mysqli con
  • 在哪里可以下载 Windows Phone 开发人员工具?

    我找到了 Web 下载程序 但它们似乎对我不起作用 我如何下载 ISO 格式的最新版本或完整安装程序 我无法使用网络下载器 谢谢 尝试这个 http go microsoft com fwlink LinkId 201927 http go
  • 在 Typescript 对象中添加新属性

    我正在尝试在对象中添加新属性 但打字稿给出错误 错误 TS2339 类型 对象 上不存在属性 数量 product Object qty Number foo this product qty 1 Object是错误的注释 更改您的注释 p
  • 如何更改客户 ID 和订单 ID?

    当前 CustomerID 从 1 开始 而生成的第一个订单已OrderID 100000001 有什么方法可以改变这些字段 所以创建的第一个客户已经 顾客号码900000001并且创建的第一个订单有OrderID 900000001 通过
  • Dagger组件依赖含义

    我正在尝试 Dagger 2 我只是通过测试来了解这个框架 我有一个 ApplicationComponent 需要成为整个应用程序的单例 所以我将其定义如下 Component modules ApplicationModule clas
  • 在 SQL Server 2008 中添加列会锁定表吗?

    我想在大约 1200 万条记录的表上运行以下命令 ALTER TABLE t1 ADD c1 int NULL ALTER TABLE t2 ADD c2 bit NOT NULL DEFAULT 0 我已经在暂存中完成了它 并且时机似乎很
  • 如何在 Swift 中将十六进制数转换为 bin?

    我有字符串变量 var str 239A23F 如何将该字符串转换为二进制数 str toInt 不起作用 您可以使用NSScanner 来自基金会框架 let scanner NSScanner string str var result
  • 如何使x轴上的字体大小变量变小

    我有这段代码来创建条形图 但我想将 x 轴中的名称更改为物种名称 并且我想让字体变小 以便我可以将其全部放入 我尝试过使用cex 功能在各种组合中 但没有起作用 如果有建议我将不胜感激 count lt matrix c 16 102 11
  • Excel 2010 VBA ActiveChart.SetSourceData 失败

    我有一个 Excel VBA 应用程序 该应用程序在 Excel 2003 中运行良好 但在 Excel 2010 中失败 相关代码为 Public Sub Create Chart Dim c Dim OutputText As Stri
  • JUnit 测试时排除 @Component 类的过滤器?

    是否可以排除 Component带注释的类 我想从 JUnit 测试中排除一个特殊的类 我的项目有一个类xEventHandler注释为 Component我不希望 spring 在 junit 测试时使用这个类 我的应用程序 TestCo
  • 按 2 个键对 FireBase 中的数据进行排序

    我构建了游戏应用程序 并将记录保存在 FireBase 的实时数据库中 数据库看看 Ka8xxTgyFB8yYKH50j score 10 seconds 1325 K222xTgyFBF33FD50j score 10 seconds 4
  • 如何使用更少的包绘制二元正态分布的表面和轮廓

    我将绘制二元正态分布的 3D 曲面及其轮廓 可以是任何二元正态分布 我想用persp and contour在我的画中 我在网上搜索了一下 但发现了很多方法 大多数人都使用过一些软件包 但我想以使用更少的软件包甚至不安装任何软件包的方式来执