我在试着画一些数学方程式。使用下面的代码几乎可以得到一个椭圆,而不是一个圆。有没有办法改善..i尝试增加步数的形状。不确定另一个模块是更好还是真的需要?我能不能只给出方程作为输入,我不需要用np.sqrt。我看了一些已经回答过的问题,但它们要么太具体,要么太复杂。所以请不要把它标记为复制品。只是在这里寻找一个一般的解决方案,因为我需要绘制抛物线和双曲线。
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 1000 , 0.001)
y = np.sqrt(9 - np.power(x,2))
# Plot the points using matplotlib
plt.plot(x, y)
plt.show()===使用一些建议,尝试绘制y和-y。但是圆圈不会在左边完成。
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(-10, 10, 0.01)
y = np.sqrt(9 - np.power(x, 2))
# Plot the points using matplotlib
plt.gca().set_aspect('equal')
plt.plot(x, y)
plt.plot(x, -y)
plt.show()发布于 2020-09-20 12:29:52
首先,你需要设置一个包含所有你需要的值的linspace,我看到你试着画一个半径为3的圆。
x = np.linspace(-5.0, 5.0, 1000)
y = np.linspace(-5.0, 5.0, 1000)之后,使用numpy创建网格,并使用matplotlib绘制等高线。请注意,F是您的圆等式。
X, Y = np.meshgrid(x,y)
F = X**2 + Y**2 - 9.0最后,只需调用matplotlib并将图形绘制为等高线。
fig, ax = plt.subplots()
ax.contour(X,Y,F,[0])
ax.set_aspect(1)
plt.title('My Circle', fontsize=8)
plt.xlim(-10,10)
plt.ylim(-10,10)
plt.grid(linestyle='--')
plt.show()https://stackoverflow.com/questions/63975431
复制相似问题