提问人:roschach 提问时间:9/19/2023 最后编辑:roschach 更新时间:9/29/2023 访问量:141
如何在pyvista中独立缩放轴?
How to scale axes independently in pyvista?
问:
假设我有 、 和 、 数组。我在 pyvista 中将它们绘制为 2 个不同的 3d 样条曲线。x
y
z
x2
y2
z2
import numpy as np
import pyvista as pv
network = pv.MultiBlock()
points_1 = np.column_stack((x, y, z))
spline_1 = pv.Spline(points_1, 500).tube(radius=0.1)
points_2 = np.column_stack((x2, y2, z2))
spline_2 = pv.Spline(points_2, 500).tube(radius=0.1)
network.append(spline_1)
network.append(spline_2)
p = pv.Plotter()
labels = dict(zlabel='l1', xlabel='l2', ylabel='l2')
p.show_grid(**labels)
p.add_axes(**labels)
p.add_mesh(spline_1, color="red", line_width=3)
p.add_mesh(spline_2, color="blue", line_width=3)
此图的问题在于一个轴过于压缩:轴值约为 300,而轴范围为 0 到 20。似乎该图对所有轴都使用相同的比例。此外,和的数量不同,所以我不想比较它们。y
x
x
y
Matplotlib
例如,自动缩放轴,并在 和 轴上使用相同的缩放比例。y
x
ax.set_aspect("equalxy")
在这种情况下,轴已经缩放,我想让一个轴使用不同的大小。我该怎么做?
答:
0赞
Bane Sullivan
12/3/2023
#1
PyVista 在物理参数空间中绘图,因此您需要使用 See docs: https://docs.pyvista.org/version/stable/api/plotting/_autosummary/pyvista.Plotter.set_scale.html#pyvista.Plotter.set_scale 在场景中设置比例pl.set_scale()
评论