我有一个关于使用matplotlib绘制2D数组的问题。在我的代码中,我有一个名为z的len(z)= 20的2D数组,并且z具有第一个值:
[[ 642.3774486 662.59980588 706.80142179 764.78786911 831.67963477
904.67872269 982.01426528 1062.49208551 1145.27029231 1229.73549967
1315.42936618 1402.00251422 1489.18433714 1576.7625077 1664.56866033
1752.46813939 1840.35250424 1928.13395024 2015.74109019 2103.11572013]
[ 554.60565024 560.31827232 591.87923587 638.51633542 695.03697015
758.44479983 826.83191468 898.90395242 973.74278531 1050.67523901
1129.19496311 1208.91328775 1289.52693752 1370.79606051 1452.52883572
1534.57042218 1616.79485775 1699.09901217 1781.39800199 1863.6216653 ]
[ 484.80770831 476.01059519 494.93090638 530.21865818 576.36816197
630.18473341 689.62342052 753.28967576 820.18913475 889.58883479
960.93441647 1033.79791772 1107.84339435 1182.80346976 1258.46286755
1334.64656142 1411.2110677 1488.03793055 1565.02877024 1642.1014669 ]
我不能将z的整个定义放在这里,因为无论如何它是从其他函数定义的一个函数。
我想绘制z的前20个数据集,所以z [0]与其他变量M相对。我做了以下工作:
plt.plot(M, Z[0], label = r'$\chi^2$ for $\Omega_m[0] $ ')
它给出了以下图(忽略标签蓝色,绘制了2个相同的日期,只有一个标签):
然后,我尝试了以下代码,这给了le其他图片。
plt.plot(M, Z[0:20], label = r'$\chi^2$ for$\Omege_m = 0$ ')
但是我不明白为什么在相同的数据下,两个图片之间的函数形状明显不同。谁能解释我为什么第二张图片与第一张图片不同,以及它绘制的是什么? matplotlib如何绘制2D数组?