python画弗里德曼(Friedman) 检验和秩和检验(Nemenyi)检验图

画好后效果图

在这里插入图片描述

实现代码如下

import matplotlib.pyplot as plt

#算法平均排名
_alg_=[1.405,2.643,2.786,2.167]

y=[1,2,3,4]#alg1,alg2,alg3,alg4

通过Nemenyi测试计算得到的临界值CD
CD=1.024
h_CD=CD/2
plt.figure(figsize=(10,6))
plt.scatter(_alg_,y,s=100,c='black')
for i in range(len(y)):
    yy=[y[i],y[i]]
    xx=[_alg_[i]-h_CD,_alg_[i]+h_CD]
    plt.plot(xx, yy,linewidth=3.0)


plt.yticks(range(0,6,1),labels=['','alg1','alg2','alg3','alg3(ours)',''],size=20)
plt.xticks(range(0,5,1),labels=['0','1','2','3','4'],size=20)


plt.xlabel("Rank",size=20)

plt.title("title",size=20)

plt.savefig("title"+'.png',format='PNG',dpi=500,bbox_inches='tight', pad_inches = +0.1)

plt.show()
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐