执行以下代码会给出一个图,其中最后 2 条次要网格线在 x 和 y 中都缺失。如果我删除修剪数据的代码部分或扩展接受的数据量(xylimit),那么可以避免这种情况。谁能看到我做错了什么?
from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
from pylab import *
l=201
x=linspace(-l,l,201)
y=linspace(-l,l,201)
z=np.random.rand(l,l)
xylimit=100
i=0
while i<len(x[:]):
if abs(x[i])>xylimit:
x=np.delete(x,i,0)
y=np.delete(y,i,0)
else:
i+=1
i=0
while i<len(y[:]):
if abs(y[i])>xylimit:
x=np.delete(x,i,0)
y=np.delete(y,i,0)
else:
i+=1
z=np.random.rand(len(x),len(x))
xgridlines = getp(gca(), 'xgridlines')
ygridlines = getp(gca(), 'ygridlines')
plt.minorticks_on()
plt.grid(b=True, which='both',linestyle='-')
l=plt.contourf(x,y,z,np.linspace(0,1,255))
plt.show()