如何重新网格化网格,使网格点之间的距离相等
How to regrid the grid so that the grid points are spaced at equal distances
图中是之前的网格。用以下方法重新研磨后:
x1 = np.linspace(min(x),max(x),len(x)) #where I make the previous x spaced equally with the len(x) = 128
y1 = np.linspace(min(y),max(y),len(y))
XX,YY = np.meshgrid(x1, y1) #MESHING
plt.plot(XX,YY)
plt.title('new grid')
我得到了新的网格。
如您所见,在彩色和出现白线的句点之间存在一种模式。
我怎样才能改变它,使这条白线之间的距离在每条彩色线之后保持一致,或者使白线消失? x 的长度应保持不变。
这与 matplotlib
的关系大于与 NumPy
或网格的关系。图形的外观取决于它的宽度、您绘制的线数(即 128 条)和线宽。
这是我的代码和结果。您可以看到,对于 2
英寸的宽度,没有白色条纹,而且并非每条线都一样粗。对于 4
英寸的宽度,彩色条纹之间偶尔还会有白色条纹。对于宽度 >= 8
有白线,但一切似乎都是等距的。
import numpy as np
import matplotlib.pyplot as plt
xmin = -4
xmax = 2
ymin = -5
ymax = 5
N = 128
x1 = np.linspace(xmin,xmax,N)
y1 = np.linspace(ymin, ymax, N)
XX,YY = np.meshgrid(x1, y1)
for width in [2, 4, 8, 16, 32]:
plt.figure(figsize=(width,7))
plt.title(f"Figure width = {width} inches")
plt.plot(XX,YY)
plt.savefig(f"so_w{width}.png", bbox_inches='tight',dpi=400)
图中是之前的网格。用以下方法重新研磨后:
x1 = np.linspace(min(x),max(x),len(x)) #where I make the previous x spaced equally with the len(x) = 128
y1 = np.linspace(min(y),max(y),len(y))
XX,YY = np.meshgrid(x1, y1) #MESHING
plt.plot(XX,YY)
plt.title('new grid')
这与 matplotlib
的关系大于与 NumPy
或网格的关系。图形的外观取决于它的宽度、您绘制的线数(即 128 条)和线宽。
这是我的代码和结果。您可以看到,对于 2
英寸的宽度,没有白色条纹,而且并非每条线都一样粗。对于 4
英寸的宽度,彩色条纹之间偶尔还会有白色条纹。对于宽度 >= 8
有白线,但一切似乎都是等距的。
import numpy as np
import matplotlib.pyplot as plt
xmin = -4
xmax = 2
ymin = -5
ymax = 5
N = 128
x1 = np.linspace(xmin,xmax,N)
y1 = np.linspace(ymin, ymax, N)
XX,YY = np.meshgrid(x1, y1)
for width in [2, 4, 8, 16, 32]:
plt.figure(figsize=(width,7))
plt.title(f"Figure width = {width} inches")
plt.plot(XX,YY)
plt.savefig(f"so_w{width}.png", bbox_inches='tight',dpi=400)