python 畫箱體圖

任務:將三組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()

箱體圖:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章