如何制作漂亮的堆叠式 3D 绘图

平面设计 数据可视化 图表设计
2022-02-22 16:43:44

我正在寻找一个情节:

  • 绘图由一组 2D 绘图组成,以 3D 方式堆叠。
  • 线条的高度由颜色表示。
  • 每个图的波的平均值由轴的虚线表示。

这种类型的图怎么称呼?

做类似事情的最简单/最快的方法(比图像中的复杂,我不需要其中的 3 个,以及右侧的黑白波形等)。

在此处输入图像描述

4个回答

这种类型的图称为“瀑布图”

它可用于在三个轴上绘制任意数据(如您的示例所示),但它最常用于绘制时频分析的结果。

您提到了波/波形,所以我猜您对时频分析感兴趣。以下是生成音频信号瀑布图的示例过程:

  • 从信号开始(时间和幅度的集合)

  • 将信号分成n等份

  • 对于每个部分:

    • 计算傅里叶变换以提取频率和功率

    • 将频率与功率绘制为二维图

  • 旋转、倾斜和平移绘图,使它们在您的示例图像中形成 3D 效果

既然您知道“瀑布图”这个短语,您可能可以在您用来处理数据的任何软件中找到一些实现。Matlab 有一个瀑布函数正是为此目的。

您按优先顺序排列的选项是:

  1. 使用软件中提供的全水功能

  2. 使用软件中提供的“在 3D 空间中制作 2D 绘图”功能

  3. 制作一堆常规的 2D 绘图并在 Inkscape 或 Illustrator 等程序中手动排列它们

您几乎可以肯定需要在 Inkscape 或 Illustrator 中进行一些后期处理才能获得与您的示例一样有吸引力的东西。

这是我在 Matlab 中生成的瀑布图示例。我使用了“在 3D 空间中制作 2D 绘图”方法,因为我想要额外的自定义。

Matlab中生成的瀑布图示例

%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 0 0 400 400
%%Title: Isometric Graph Drawing
%%Creator: Janne Ojala
%%CreationDate:  2019-04-17
%%EndComments

/up {dup translate} def
/down {neg up} def
/isometric-bottom {[30 cos 30 sin 150 cos 150 sin 0 0] concat } def

/isometric-back {[30 cos 30 sin 90 cos 90 sin 0 0] concat } def
/c {newpath 1 0 360 arc closepath fill} def


/Arial findfont 24 scalefont setfont

100 160 translate
gsave 
isometric-back
    0 0 moveto 
    /FuturaStd-Medium findfont 18 scalefont setfont
    (IsoGraph) show
grestore

gsave 
0 1 12 { 
    pop
    150 cos -10 mul  150 sin -10 mul translate
    gsave 
    isometric-bottom 
        0 10 200 { 0 c} for
    grestore
} for
grestore

150 cos -20 mul  150 sin -20 mul translate

gsave 
isometric-back
  newpath
  50 0 moveto
  55 0 55 33 60 33 curveto
  65 33 65 12 70 12 curveto
  75 12 75 0 80 0 curveto
  85 0 85 16 90 16 curveto
  95 16 95 0 100 0 curveto
  gsave
     closepath
     stroke
  grestore
  fill
grestore

150 cos -10 mul  150 sin -10 mul translate
gsave 
isometric-back
  newpath
  80 0 moveto
  85 0 85 3 90 3 curveto
  95 3 95 4 100 4 curveto
  105 4 105 8 110 8 curveto
  115 8 115 3 120 3 curveto
  125 3 125 0 130 0 curveto
  gsave
     closepath
     stroke
  grestore
  fill
grestore
%%EOF

在此处输入图像描述

比例法则

WIRED杂志原始出版物中的名称

在此处输入图像描述

根据sciencedirect.com的比例定律定义

比例定律是物理量之间的关系,其中所有物理量都以幂的形式出现,其中 x 的幂以 xα 的形式表示,其中 α 是实数。

2D 几何的比例定律可以扩展到三维 (3D) 情况


关于如何制作类似的东西,我认为它是在应用程序中制作的图表的混合,它允许通过数据转储的图形表示加上矢量程序中的蒙太奇来生成等距透视和数据/参考添加。

实际上,我可以告诉你,如果我必须制作那张海报,我会要求所有图表在 Illustrator 中组合设计。原始图像看起来太整洁了,无法在非矢量图形的程序中制作:

在此处输入图像描述

出于装饰目的,您手动绘制一个。

在此处输入图像描述

红框是获得同样宽的子图的模具。我已经制作了一些蓝色的副本,并用铅笔画了几条曲线。确保曲线无处转回左转。

这些区域可以用形状生成器填充:

在此处输入图像描述

注1:如果您有一个矩形作为您的模具,您可以将生产率提高一倍。只记得翻转上半部分。

注意 2:从工具选项中选择铅笔使您的绘图平滑的程度。如果你想要带角的折线,你可以用笔而不是用铅笔点击

选择所有填充区域,将它们复制到剪贴板,删除模具残留物并将填充区域粘贴回来。对齐它们,删除可能的笔划:

在此处输入图像描述

制作一个渐变并用它填充所有内容:

在此处输入图像描述

使用剪切工具并倾斜形状。按住 shift 以防止旋转。

在此处输入图像描述

为形状制作放置指南并放置它们。我画了一条线,应用了几次 Object > Path > Add Anchors 到它。这将锚点复制了两次,并以相等的间距插入它们。我将形状的角放在锚点上:

在此处输入图像描述

有智能参考线并捕捉到点,选择一个形状,用直接选择工具拖动角,它捕捉,其余的形状跟随。

使用一个常见的剪切角,你需要它来制作文本。我相信传统的等距剪切是一个不错的选择。