import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
heart = pd.read_csv('C:/Users/Mac/Desktop/heart.csv')
colors=['tomato','lightskyblue']
countNoDisease = len(heart[heart['target']==0])
countHaveDisease = len(heart[heart['target']==1])
total = len(heart['target'])
rateNo = countNoDisease/total100
rateHave = countHaveDisease/total100
diseaseRate = pd.Series({'正常':countNoDisease, '患病': countHaveDisease})
plt.bar(diseaseRate.index,diseaseRate.values,color='lightskyblue')
plt.title('患病和正常人群分布',fontsize=14)
plt.xlabel('是否患病',fontsize=12)
plt.ylabel('人数',fontsize=12)
plt.ylim([0,200])
plt.show()
运行出来是这样
是因为matplotlib主题字体对中文是不友好的
请将电脑里面的字体文件(一般在C:\windows\fonts文件夹下)移动到python的安装路径,
然后在作图前做如下修改:
plt.rcParams['font.sans-serif']=['STSONG'] #这里假设移动的字体文件是华文宋体,如果是微软雅黑则是SimHei
matplotlib默认不支持中文,需要设置字体。
请见:https://blog.csdn.net/weixin_42870380/article/details/94883827