答案 0 :(得分:2)
这不是图表而是图片。无论如何,你可以开始如下。
您可以使用scipy
加载图片。然后,在最简单的情况下,做一个水平切割,它将给你强度与像素位置。
import scipy.misc as misc
import matplotlib.pyplot as plt
img = misc.imread('spectrum.png', mode='L')
mid_line = img[len(img)//2]
plt.plot(mid_line)
plt.show()
那里有相当多的背景光度。进行垂直平均可以得到更平滑的光谱(img_mean = img.mean(axis=0)
)。
然后你必须找到一种方法来校准"像素位置到波长。为此,你需要一个外部来源"真理",我不知道你有什么。例如,可以说绿线处的最大值是510nm(像素405),而亮蓝色处的最大值是460nm(像素302)。然后,根据您的实验设置,您可以说像素的距离与波长是线性的,然后您就可以进行转换。
希望这会引导你一点。