处理matplotlib中的无限奇异点
我最近一直在用 Python 绘制 1/r 或 1/sqrt(x^2 + y^2) 的图形。当(x,y)→时(0,0), 1/r 变为 inf。为了解决这个问题,我使用 np.nan_to_num 来处理无穷大,但它只是给出了一个错误。我只是想让我的图表看起来不错,而不是像这张图片中那样有这些钻石:
这是我的代码:
min, max, ds = -10, 10, 0.5
x = np.arange(min, max, ds)
y = np.arange(min, max, ds)
X, Y = np.meshgrid(x, y)
def potential(X, Y, X0, Y0):
return 1/np.sqrt((X-X0)**2 + (Y-Y0)**2)
plt.figure(figsize = (9.5,8))
plt.contourf(X, Y, potential(X, Y, 0, 0), 100)
plt.colorbar()
plt.title("Electric potential", fontsize = 20)
plt.show()
I have been graphing the graph for 1/r or 1/sqrt(x^2 + y^2) in Python recently. When (x,y) -> (0,0), 1/r goes to inf. To deal with this, I used np.nan_to_num to deal with the infinities but it just gives an error. I just wanna make my graph look nice and not have these diamond things like in this picture:
Here is my code:
min, max, ds = -10, 10, 0.5
x = np.arange(min, max, ds)
y = np.arange(min, max, ds)
X, Y = np.meshgrid(x, y)
def potential(X, Y, X0, Y0):
return 1/np.sqrt((X-X0)**2 + (Y-Y0)**2)
plt.figure(figsize = (9.5,8))
plt.contourf(X, Y, potential(X, Y, 0, 0), 100)
plt.colorbar()
plt.title("Electric potential", fontsize = 20)
plt.show()
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论