此问题已在此处有答案:
Given parallel lists, how can I sort one while permuting (rearranging) the other in the same way?(16个回答)
2小时前关闭
尝试使用curve_fit拟合sin函数到这里的一些点。当绘制拟合和点时,我得到了一些我不知道如何解释的东西,所以我最好发布一些图像。
使用以下代码行可以得到:
plt.plot(phase_min, sinusoidal_function(phase_min, *popt), '.', lw=3)
使用线样式'-',我得到:
我怎么能用一条该死的线连接每个相邻的点,而不是中间的所有点?
2条答案
按热度按时间m3eecexj1#
当你在
matplotlib
中绘制一条线时,它会自动按照提供的顺序连接这些点。请参见下面的示例:你的问题是你的
phase_min
没有排序,matplotlib
试图按顺序连接你的数据点。实际上,因为你已经得到了拟合函数,你不需要使用原始数据来绘制函数。你可以只定义你想要绘制直线的数据点,如下所示。这样你就可以有尽可能多的数据点来绘制曲线,所以这条线会比你用原始数据点作图更平滑。yqkkidmi2#
可以使用
np.argsort
:其中
x
和y
是橙子点的坐标。