【问题标题】:Combining 3D/2D plots结合 3D/2D 绘图
【发布时间】:2010-12-25 12:14:14
【问题描述】:

我正在尝试制作类似于 http://www.gradient-da.com/img/temperature%20surface%20plot%20470x406.JPG http://www.gradient-da.com/img/temperature%20surface%20plot%20470x406.JPG 的可视化。

这个想法是让 3D 表面图与表面的 2d 表示重叠。

我可以构建任意曲面/多边形形状(如http://addictedtor.free.fr/graphiques/graphcode.php?graph=135),并且可以制作相应的二维图。我似乎无法弄清楚以一种很好的方式将它们组合在一起的方法(就像上面的 jpg 中显示的那样)。

我尝试在谷歌上搜索答案,但在 R 中找不到类似的东西。 任何帮助将不胜感激!

编辑:2D 部分不是 2D 部分的投影。我选择了这张特定的图片来说明这一点。例如

  1. 这里的 2D 部分是电路图像,3D 部分是温度)。
  2. 您可以在 2D 中查看城市地图,在 3D 中查看交通情况
  3. 等等...

最好的,

布鲁诺

【问题讨论】:

  • 不太清楚你在问什么 - 但如果你可以生成 3d 表面,你可以使用相同的代码生成 2d 图作为 3d 的退化情况(即 - 所有 z 值恰好是 0)
  • 我的困难是如何将两者结合起来(如图所示),具有上面显示的 3d 表面(并与)2D 图(2D 不仅仅是 3D 的投影,而是而是一个相关的数量)
  • 这可能没有帮助,但拉伸表面真的是显示 z 值的最佳方式吗?为什么不在二维图像上叠加色带?
  • 这对我来说似乎是一个毫无意义的可视化 - 你在二维表面上看不到任何东西!
  • 这对于熟悉电路的人来说很有意义。看一眼温度图下方的电路就足以确认最冷的部分对应于可能是焊盘的部分,而最热的部分是有逻辑的区域。这将有助于确定最高山峰下的区域。

标签: r 3d statistics plot


【解决方案1】:

我会给出一个理论上的想法,

在同一个 3D 绘图中,选择一个垂直于 3D 表面的平面(就在 3D 表面下方)并将所有值投影到它。代替 2D 和 3D 绘图,您将只使用 3D 绘图,它也会绘制您的表面。

HTH

【讨论】:

  • 对不起,如果我不清楚。 2D 部分不是 2D 部分的投影。我选择了这张特定的图片来说明这一点(在 2D 上你有电路的图像,在 3D 上你有温度)。
  • 没问题。您可以在 3D 图的平面上绘制 2D 图。
【解决方案2】:

看起来 2D 图是微电子电路的布局,尽管跳过了一些细节,而 3D 图可能是同一电路的热图。

我对 R 的功能知之甚少,但我想用 R 从表示布局信息的同一数据集(但有和没有热数据)分别生成两个图然后将它们组合起来会更容易带有图形处理程序。

【讨论】:

    【解决方案3】:

    在 R 中没有帮助,但您可以在 ROOT 中执行类似的操作,如下图所示:

    取自THistPainter class documentation

    代码是开源的,如果需要重新实现可以检查。

    【讨论】:

      【解决方案4】:

      也许您应该尝试从您的 2d 图片制作 opengl 纹理并将其映射到 3d 多边形上以包含在您的场景图中?

      真的不明白你是否想专门用 R 来做,所以也许在 opengl 中潜水对你来说太低了。如果你准备好了,你可以重用一个简单的 java 库来简化绘制 3d 表面:http://code.google.com/p/jzy3d

      希望对您有所帮助, 马丁

      【讨论】:

        【解决方案5】:

        您要查找的内容称为纹理贴图——如果 R 图形包中未提供它,您可以“手动”完成。下面的建议可能不快速或不方便(甚至没有帮助,因为我对 R 不是很熟悉),但它可能确实有效......

        由于您知道可以使用指定颜色绘制 3D 曲面图,因此您可以尝试使用图像的颜色绘制平面 3D 曲面。

        如果 R 还缺少从图像格式中提取数据的方法,那么有一种称为 PPM(代表 Portable PixMap)的图像格式,其中一种变体基本上是空格分隔的十进制数字。将您的图像转换为这种格式后(例如,使用 Photoshop 或一些专用的图像转换程序),输入到 R 中应该相对容易。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-11-02
          • 2011-02-25
          • 1970-01-01
          相关资源
          最近更新 更多