全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
5889 7
2014-11-20
悬赏 50 个论坛币 未解决
我用股票市场价格数据研究它的无标度特性,做出了节点度分布图,想在双对数坐标下,给节点度分布图画一条拟合直线,想如图1这样。 可是我画出的度分布的拟合线是图2这样。
我的代码如下:
p=polyfit([0:M],P_DeD,1)   
z=polyval(p,[0:M]);
loglog([0:M],P_DeD,'.');
hold on
plot(log([0:M]),z,'r');
    
其中 p =  -0.0004    0.0283
  
  不知道为什么拟合出来是曲线不是直线啊?请各位指教

图1 图2
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2014-11-20 12:42:49
最后一个代码是plot(log([0:M]),log(z),'r'); ; 不是plot(log([0:M]),z,'r'); 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-11-20 13:41:42
fantuanxiaot 发表于 2014-11-20 12:42
最后一个代码是plot(log([0:M]),log(z),'r');  ; 不是plot(log([0:M]),z,'r'); 。。。。。。。。。。。。。 ...
我把它改成log(z)后,画出的图中,就没有拟合线了,只有原来的点。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-11-20 13:46:28
p=polyfit([0:M],P_DeD,1)   
z=polyval(p,[0:M]);
这两句代码,我尝试了各种log组合,比如 :p=polyfit(log([0:M]),log(P_DeD),1) ,或者z=polyval(p,log([0:M])),拟合结果都不对。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-11-20 20:23:22
plot(log([0:M]),log(z),'r-')
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2014-11-20 21:20:06
fantuanxiaot 发表于 2014-11-20 20:23
plot(log([0:M]),log(z),'r-')
改为这句,仍然没有拟合线画出来啊。还是只有原来的点。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群