我有个奇怪的问题np.arange公司. 我想画一个简单的方程,它基本上看起来像y=Ax^{-1/3}(1-Bx^{4/3})^{1/2}
然而,我可以从WolframMathematica获得一个几乎可以工作的质量图,但是我正在努力在python中生成相同的绘图!在
import numpy as np
import matplotlib.pyplot as plt
import math
# evenly sampled time at 200ms intervals
x = np.arange(0., 10**33, 10**8.)
plt.plot(x**(-1/3)*(1.102*10**20)*(1-(x**(4/3)*2.424*10**(-45)))**(1/2))
plt.xlim(math.pow(10,31), 3*math.pow(10,33))
plt.ylim(5*math.pow(10,8), 2.5*math.pow(10,9))
plt.xlabel("M(g)", fontsize =13)
plt.ylabel("R(cm)", fontsize=13)
plt.show()
我的变量x应该从0到3e33,我想在线性图和loglog图中都看到曲线图,但是我的x范围内存有问题,如果我设置一个较小的范围,基本上就没有绘图了。我肯定我做错了什么,我只是没看到。感谢你的帮助。在
代码中有几个问题:
x
的点数太多。减少点数,例如1000分。在x
不应该从0
开始,因为0**(-1/3)
是未定义的(不能除以0)。因此x
的合理定义可以是x
值实际上并不出现在绘图中,因为您只绘制y
,plt.plot(y)
而不是{x
:plt.plot(x,y)
总共
^{pr2}$将提供
相关问题 更多 >
编程相关推荐