Plotly自定义函数曲线拟合实例

软件技巧 2年前 (2015-10-14) 24 人围观 1

2015-10-14_083917_副本

Plotly,一款在线版的数据可视化与数据分析工具。

一个非常偶然的机会,我刚好出差中,手头电脑里没有安装Matlab,恰好此时又需要做一个曲线拟合的工作,于是我就找到了Plotly。

先给出网址:https://plot.ly

先来看一眼Plotly能绘制怎样的专业图形:

2015-10-14_085433_副本

2015-10-14_085454_副本

2015-10-14_085512_副本

以上三幅图是plotly官方给出的示例,用户可以下载每张图的数据,以及绘制这些图的Matlab、Python和R语言的代码,非常具有共享精神啊!

本文开头的时候提到,我是在找一个临时替代Matlab进行数据拟合工具的时候找到了plotly,那么自然就来挖掘一下它的拟合功能是否强大了。

首先,输入数据。有意思的是,这款互联网应用竟然是支持将数据从excel里直接复制-粘贴过来的,这可是为数据的输入节约了大量的功夫。

输入之后的界面是这样的:

2015-10-14_085724_副本

通过点击,可以将col1设置为x,将col2设置为y。

想一想,如果有多组(x,y)怎么办呢?多点击几下那个“choose as x”按钮,发现颜色会变化吧?对了,它就是通过颜色是否一致来判断那两组数据是一对的。

输入数据完成之后,可以设置绘制什么样的图形,因为是要拟合,所以我这里设置成了散点图:

2015-10-14_085755_副本

绘制之后的界面:

2015-10-14_085816_副本

下面就开始拟合了,在左侧的一堆按钮中,找到从下向上数第二个“Fit data”,点击后进入拟合设置对话框

2015-10-14_085840_副本

plotly有默认的若干种拟合方程,在不知道数据规律的时候,可以试试这些”现成的“方程哪个好用;对于本例,由于数据的规律已知,所以需要使用自定义函数,即在上面的对话框中选中“Define your own fit fuction”选项。

然后就可以输入自定义参数了:

 

2015-10-14_090035_副本

有意思的是,当输入带有参数(a,b)的表达式后,程序会自动识别出参数字符,并且要求用户输入参数的初始值。

参数初始值一般都通过经验给出,点击”Show  guess curve on plot”之后,虚线即为按照初始值计算出的曲线形状,当调整初始值时,虚线曲线也会随之变化,用户可以很直观地选择一个理想的参数数值。

点击”Run the fit”,Plotly很快地就得到计算结果如下了:

2015-10-14_090052_副本

是不是一个很理想的工具呢?

Plotly还有许多其他功能呢,有兴趣的同学快去研究吧。