最近因?yàn)閹屠习鍖懸黄獏^(qū)域經(jīng)濟(jì)學(xué)方面文章贝搁,學(xué)了點(diǎn)空間計(jì)量方面的知識(shí)。MATLAB用來做空間計(jì)量的jplv7包挺強(qiáng)大的芽偏,但不是特別方便雷逆,似乎不能生成莫蘭散點(diǎn)圖。于是參考Anselin在R語言中寫的莫蘭散點(diǎn)圖代碼寫了一個(gè)MATLAB版的污尉。
標(biāo)準(zhǔn)化莫蘭指數(shù):
莫蘭散點(diǎn)圖代碼:
function moran_scatter=moran_test_y(x,w) %x為輸入變量膀哲,w為空間權(quán)重矩陣
zx=(x-mean(x))/std(x);
wzx=w*zx;
scatter(zx,wzx,'filled');
axis([-3,4,-0.6,0.8])
hold on
n=xlim;
m=ylim;
moran_I=regress(wzx,zx);
zx1=-3:0.01:4;
moran_scatter=plot(zx1,moran_I*zx1,'-r','linewidth',2);
title(['Moran’s I = ',num2str(moran_I)]);
hold on
line([n(1),n(2)],[0,0],'linestyle','--','color','k');
line([0,0],[m(1),m(2)],'linestyle','--','color','k');
end
效果圖:
莫蘭散點(diǎn)圖.jpg