我试图对发射线下的区域进行着色,但在连续体(由红色直线表示)处切断着色时遇到了麻烦。有人能解决这个问题吗?我一直找不到答案。
这些代码行处理绘图和区域着色。
` #绘制光谱
plt.plot(wavelength1, fluxe1, color='blue', label='Spectrum')
plt.scatter(x_values, [yl, yr], color='red', label='Data Points')
plt.plot(x_values, y_values, color='red', label='Linear Equation')
# Shade the region for equivalent width calculation
plt.fill_between(wavelengths, fluxes, color='gray', alpha=0.5, label='Equivalent Width')
# Plot the intersection point
plt.axvline(x_intersect, color='red', linestyle='--', label='Intersection Point')
# Set the plot limits
plt.xlim(5650, 5750)
plt.ylim(0, 2.5)
# Add labels and legend
plt.xlabel('Wavelength (angstroms)')
plt.ylabel('Flux')
plt.legend()
# Show the plot
plt.show()
字符串
`
enter image description here
以前列出的…
1条答案
按热度按时间nwlls2ji1#
plt.fill_between
可以接受第二个高度参数y2
,这样你就可以在两条曲线之间填充(默认情况下它被设置为0)。字符串
这只在
len(fluxes) == len(y_values)
的情况下有效,但您没有给予足够的信息来运行代码,因此我无法测试它。