【发布时间】:2020-05-18 03:31:46
【问题描述】:
我试图在同一张图中绘制不同温度下的黑体,温度分别为 10、10^3、10^5、10^7、10^9 和 10^12 开尔文。 10^12 看起来不错,但其他看起来很平。我已经尝试将它放在对数刻度中,但它似乎没有帮助。
这是我的代码:
import numpy as np
import matplotlib.pylab as plt
k = 1.38 * 10**-23
h = 6.62607015e-34
c = 3e8
def pla(T, nu):
x = (h*nu) / (k*T)
c1 = 2 * h * nu**3
planck = c1 / (np.exp(x) * c**2)
return planck
nus = np.linspace(0, 4e23)
T10 = pla(10, nus)
Te3 = pla(1e3, nus)
Te5 = pla(1e5, nus)
Te7 = pla(1e7, nus)
Te9 = pla(1e9, nus)
Te12 = pla(1e12, nus)
plt.xlabel("frecuencia")
plt.ylabel("temperatura")
plt.plot(nus, T10, color='blue', label='T10')
plt.plot(nus, Te3, color='red', label='Te3')
plt.plot(nus, Te5, color='orange', label='Te5')
plt.plot(nus, Te7, color='purple', label='Te7')
plt.plot(nus, Te9, color='gray', label='Te9')
plt.plot(nus, Te12, color='green', label='Te12')
plt.legend(loc='upper right')
plt.show()
结果:
【问题讨论】:
-
我建议一次绘制一条线。因为有些是平的。也只需简单地将它们打印出来:
print(Te5)(全为零) -
谢谢,我只是打印它们,它们是 0,但我已经看到了其他温度的图表,因此更改了 nus=np.linspace(0, 4e23) 为 4e20、4e18 等以及图表和价值观是对的,我不明白为什么
-
离题评论,但您可以添加/使用与黑体温度相关的颜色,请参阅Star B-V color index to apparent RGB color 以在视觉上增强图形(用作背景或完全更改图形几何)
标签: python python-3.x graph graphics python-requests