任務:將三組txt數據轉化爲箱體圖進行比較
分析:(1)讀入使用numpy中loadtext函數
(2)並用numpy中的mean將數據轉換爲數組
(3)使用pandas中boxplot畫圖
代碼如下:
# -*- coding: utf-8 -*-
"""
Created on Tue Apr 16 19:36:30 2019
@author: txx
"""
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
#=open("E:\\affine_mi_overlap.txt",'r')
#tips = np.loadtxt(f)
tips1= np.loadtxt("E:\\affine_mi_overlap.txt")
list1=np.mean(tips1,axis=0)
tips2 = np.loadtxt("E:\\bspline_mi_overlap.txt")
list2=np.mean(tips2,axis=0)
tips3 = np.loadtxt("E:\\bspline_ssm_overlap.txt")
list3=np.mean(tips3,axis=0)
data=pd.DataFrame({"Affine+MI":list1,
"BSpline+MI":list2,
"BSpline+SSM":list3
})
data.boxplot(widths=0.15,figsize=(16,12),fontsize=16)
#plt.ylabel("Dice similarity score",fontsize=18)
#plt.xlabel("Target subject number",fontsize=18)
plt.grid(axis='y', ls='--', lw=2, color='gray', alpha=0.4)
plt.grid(axis='x', ls='--', lw=2, color='gray', alpha=0.4)
plt.ylim(0,1)
plt.show()
箱體圖: