当前位置:  开发笔记 > 编程语言 > 正文

如何使用Matplotlib颤动刻度

如何解决《如何使用Matplotlib颤动刻度》经验,为你挑选了1个好方法。

我需要做一系列矢量绘图。我可以使用matplotlib的颤抖例程获取任意数量的绘图。关键是,颤动器会自动缩放每个图,但是我需要每个图中的向量都代表相同的比例。例如,如果在一个绘图中以1cm的矢量表示10 km / hr,则在所有绘图中以1cm的矢量表示10km / hr。(我真的不在乎矢量是否具体为1cm。这只是一个例子。)我想我可以通过分别为每个图调整scale参数来实现这一点。但这似乎不起作用。

例如,我在第一个图中找到最大速度mxs1,然后对每个图执行类似的操作

mxspd = np.max(speed[n])
pylab.quiver(x,y,vx[n],vy[n],scale=mxs1/mxspd)

但这不能充分调整向量的长度。例如,在我尝试的情况下,mxspd大约是的一半mxs1,因此绘图中的向量的n长度应大约是第一个绘图中向量的一半。但是,两个图中的向量的长度几乎相同。



1> tacaswell..:
import matplotlib
import numpy as np
import matplotlib.pyplot as plt

x, y = np.mgrid[0:20, 0:25]
u = np.sin(2 *x * np.pi / 20)
v = np.cos(2 * y * np.pi / 25)

fig, (ax_l, ax_r) = plt.subplots(1, 2, figsize=(8, 4))

ax_r.quiver(x, y, u, v, scale=5, scale_units='inches')
ax_l.quiver(x, y, 2*u, 2*v, scale=5, scale_units='inches')

ax_l.set_title('2x')
ax_r.set_title('1x')

请参阅文档,以获取有关scale和的解释scale_units

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有