我有一个由数万个3D点和每个点的表面法线构成的列表,我想用matplotlib进行绘制。
虽然我可以很容易地绘制点,但是在绘制线(以展示法线)时,我尝试过三种方法,但都没有达到预期的结果。
第一种方法是对每条线进行迭代,就像这个问题的解决方案。这个方法能够正常工作,但速度非常慢。
第二种方法,看起来适用于2D绘图,就是将Nones交错插入到plot函数提供的x,y列表中。就像这个网站上解释的最后一个方法。但是,当在3D绘图时,它似乎不起作用。
第三种方法,适用于2D且效果良好的方法,是使用LineCollection。但是,当我传递3D点时,它会引发一个异常,抱怨“'vertices' must be a 2D list or array with shape Nx2”。因此,看来 LineCollection 不支持3D。
有人知道如何有效地使用matplotlib绘制大量的3D线段吗?
第一种方法是对每条线进行迭代,就像这个问题的解决方案。这个方法能够正常工作,但速度非常慢。
第二种方法,看起来适用于2D绘图,就是将Nones交错插入到plot函数提供的x,y列表中。就像这个网站上解释的最后一个方法。但是,当在3D绘图时,它似乎不起作用。
第三种方法,适用于2D且效果良好的方法,是使用LineCollection。但是,当我传递3D点时,它会引发一个异常,抱怨“'vertices' must be a 2D list or array with shape Nx2”。因此,看来 LineCollection 不支持3D。
有人知道如何有效地使用matplotlib绘制大量的3D线段吗?