首页 > 解决方案 > 我正确使用 pcolormesh 吗?为什么它没有绘制我的所有数据?

问题描述

以下 python3.7.6 代码让我接近我正在寻找的内容:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors as colors

ex_theta_arr = np.array(range(4,75,1))
ex_times = [0.5, 0.75, 1,2,3,4,5,10,15,20,25,30,35]

x_len = len(ex_theta_arr)
y_len = len(ex_times)
ex_data = np.random.random((x_len,y_len))


xx, yy = np.meshgrid(ex_times, ex_theta_arr)

fig, ax = plt.subplots()
ax.set_yscale('log')
cs = ax.pcolormesh(yy, xx, ex_data)

ex_x_arr = np.array([ex_theta_arr.min(),ex_theta_arr.max()])

for time in ex_times:
    ax.plot(ex_x_arr, (time, time), 'w-.',linewidth=1)

cbar = fig.colorbar(cs)

在此处输入图像描述

但是,我希望在此图中看到 13 个数据行(白线之间的部分),因为 13 是我的times数组的长度。只有 12 个,这让我觉得缺少一个数据行……我怀疑我缺少一些简单的东西,但无法弄清楚。

提前致谢!

标签: pythonmatplotlib

解决方案


推荐阅读