如何在 pyplot 中为水平和垂直维度设置不同的 dpi 值
How to set up different dpi-values for horizontal and vertical dimensions in pyplot
我有一个形状为 (10,1800)
的 numpy 数组 arr
,我想在 Jupyter 笔记本中使用 imshow
函数将其绘制为二维图。默认情况下,绘制了一个图像,但它看起来像一条窄水平线,因为只有 10 行。我想绘制它以便拉伸垂直轴。下面的命令没有帮助,我认为这是因为 dpi 值适用于像素的两个维度。问题是是否可以为一个绘图设置两个不同的 dpi 值,如果可以,那么如何设置。或者,如果有另一个绘图命令可以完成这项工作或实现目标的其他方法,我也想了解一下!谢谢!
import matplotlib.pyplot as plt
fig = plt.figure(num=None, figsize=(10, 60), dpi=80, facecolor='w', edgecolor='k')
plt.imshow(arr)
imshow
默认情况下将纵横比设置为“相等”,因此您的轴将在较细的方向上压缩。要停止这种情况,请将方面设置为“自动”,或设置为一些适合您的浮点数。
import matplotlib.pyplot as plt
fig = plt.figure(num=None, figsize=(10, 60), dpi=80, facecolor='w', edgecolor='k')
arr = np.random.randn(500, 40)
plt.imshow(arr, aspect='auto')
我有一个形状为 (10,1800)
的 numpy 数组 arr
,我想在 Jupyter 笔记本中使用 imshow
函数将其绘制为二维图。默认情况下,绘制了一个图像,但它看起来像一条窄水平线,因为只有 10 行。我想绘制它以便拉伸垂直轴。下面的命令没有帮助,我认为这是因为 dpi 值适用于像素的两个维度。问题是是否可以为一个绘图设置两个不同的 dpi 值,如果可以,那么如何设置。或者,如果有另一个绘图命令可以完成这项工作或实现目标的其他方法,我也想了解一下!谢谢!
import matplotlib.pyplot as plt
fig = plt.figure(num=None, figsize=(10, 60), dpi=80, facecolor='w', edgecolor='k')
plt.imshow(arr)
imshow
默认情况下将纵横比设置为“相等”,因此您的轴将在较细的方向上压缩。要停止这种情况,请将方面设置为“自动”,或设置为一些适合您的浮点数。
import matplotlib.pyplot as plt
fig = plt.figure(num=None, figsize=(10, 60), dpi=80, facecolor='w', edgecolor='k')
arr = np.random.randn(500, 40)
plt.imshow(arr, aspect='auto')