python的误差条形图的解释_如何使用python绘制带有误差条的条形图?
我使用的是python3.5。另外,我是一個初學者(3周的經驗)Python嘗試者,不知怎么的,我沒有放棄嘗試分析我的數據。在
數據說明:我的數據在csv文件中(釩鐵.csv). {如果我想把它全部包括進來,請看。它有5列:年齡(歲)
釩鐵(升)
ht(英寸)
性別(女性=0,男性=1)
吸煙(非吸煙者=1,吸煙者=1)
任務:我試圖編寫一個程序來生成平均fev的條形圖,其中誤差條表示標準偏差。我試著在4個不同的年齡組(11-12,13-14,15-16,17或更大)同時擁有兩個酒吧(吸煙者/不吸煙者)。在
目前為止的代碼(請原諒我所有的注釋,這有助于我知道我在做什么):import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
data = pd.read_csv('fev.csv')
nonsmokers = data[data.smoke==0]
smokers = data[data.smoke==1]
nonsmokers1 = nonsmokers[(nonsmokers.age==11) | (nonsmokers.age==12)]
nonsmokers2 = nonsmokers[(nonsmokers.age==13) | (nonsmokers.age==14)]
nonsmokers3 = nonsmokers[(nonsmokers.age==15) | (nonsmokers.age==16)]
nonsmokers4 = nonsmokers[(nonsmokers.age>=17)]
smokers1 = smokers[(smokers.age==11) | (smokers.age==12)]
smokers2 = smokers[(smokers.age==13) | (smokers.age==14)]
smokers3 = smokers[(smokers.age==15) | (smokers.age==16)]
smokers4 = smokers[(smokers.age>=17)]
nonsmMean = [nonsmokers1.fev.mean(), nonsmokers2.fev.mean(), nonsmokers3.fev.mean(), nonsmokers4.fev.mean()]
nonsmSd = [nonsmokers1.fev.std(), nonsmokers2.fev.std(), nonsmokers3.fev.std(), nonsmokers4.fev.std()]
smMean = [smokers1.fev.mean(), smokers2.fev.mean(), smokers3.fev.mean(), smokers4.fev.mean()]
smSd = [smokers1.fev.std(), smokers2.fev.std(), smokers3.fev.std(), smokers4.fev.std()]
# data to be plotted
nonsmoker = np.array(nonsmMean)
sdNonsmoker = np.array(nonsmSd)
smoker = np.array(smMean)
sdSmoker = np.array(smSd)
# parameters
bar_width = 0.35
x = np.arange(len(nonsmoker))
# plotting bars
plt.bar(x, nonsmoker, bar_width, yerr=sdNonsmoker, ecolor='k', color='b', label='Nonsmokers')
plt.bar(x+bar_width, smoker, bar_width, yerr=sdSmoker, ecolor='k', color='m', label='Smokers')
# formatting and labeling the axes and title
plt.xlabel('Age')
plt.ylabel('FEV')
plt.title('Mean FEV by Age and Smoking Status')
plt.xticks(x+0.35, ['11 to 12', '13 to 14', '15 to 16', '17+'])
# adding the legend
plt.legend()
plt.axis([-0.5,4.2,0,7])
plt.savefig('FEVgraph.png', dpi=300)
# and we are done!
plt.show()
有沒有更有效的方法?在
謝謝!在
總結
以上是生活随笔為你收集整理的python的误差条形图的解释_如何使用python绘制带有误差条的条形图?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql数据库用hs_MySQL数据库
- 下一篇: java集合类详解和使用_Java 集合