gpt4 book ai didi

Python 使用 matplotlib 绘制大矩阵

转载 作者:太空狗 更新时间:2023-10-29 20:31:23 25 4
gpt4 key购买 nike

我正在尝试绘制一个包含 2000 列和 200000 行的矩阵。当矩阵很小时,我可以测试绘图并测试导出矩阵图

matshow(my_matrix)
show()

但是,当向 my_matrix 添加更多行时,图形会变得非常窄,因为行数远多于列数,因此在放大时会失去精度。我可以使矩阵图形可滚动吗?如果不是,我怎样才能在不损失精度的情况下可视化这样的矩阵?

我还尝试调用 savefig('filename', dpi=300) 以在不损失太多精度的情况下保存图像,但是当矩阵很大时它会抛出 MemoryError。非常感谢!

最佳答案

我最终综合了@tcaswell 和@lesnikow 的建议。

获取当前轴以便正确设置自动纵横比,我还将矩阵拆分为更小的矩阵:

    import matplotlib.pylab as plt

for j in range(lower_bound_on_rows, upper_bound_on_rows): nums.append(j)
partial_matrix = my_matrix[nums, :]

plt.matshow(partial_matrix, fignum=100)
plt.gca().set_aspect('auto')
plt.savefig('filename.png', dpi=600)

我的矩阵在垂直方向上很长,所以我按行切片并保留较小矩阵中的所有列。如果您的矩阵在水平方向上很长,请像这样翻转索引 my_matrix[:, nums]

关于Python 使用 matplotlib 绘制大矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31215172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com