import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #解决中文乱码
plt.rcParams['axes.unicode_minus']=False #解决负号不显示
df=pd.read_excel('体温.xls')
fig=plt.figure(figsize=(10,6),facecolor='yellow') #figure画布 facecolor背景颜色 edgecolor边框颜色 frameon=true显示边框
#print(df.head(5))
x=df['日期']
y=df['体温']
plt.plot(x,y,color='g',linestyle='-.',marker='*') #color颜色 linestyle线条样式 ':'虚线 '--'双画线 '-.'点画线
#marker标记样点: o v ^ . , < > 1 2 3 4 s p * h + x d
plt.xlabel('2020年2月')
plt.ylabel('体温') #轴标题
data=['11','22','33','44','55','66','77','88','99','10','11','12','13','14']
#plt.xticks(range(1,15),data) #第一个值为刻度,第二个为刻度值
#plt.yticks([35.4,35.6,35.8,36,36.2,36.2]) #ticks()坐标轴刻度
#plt.xlim(1,14)
#plt.ylim(35,45) #lim()设置坐标轴范围
plt.grid(axis='x',linestyle='--',linewidth=2) #grid()生成网格线 axis='x'隐藏x轴网格线 linstyle linewidth=1
for a,b in zip(x,y):
plt.text(a,b,'%.1f'%b,fontsize=12,ha='center') #text()文本标签 前两个指位置 第三个填值 '%.1f'%b 保留一位小数
#ha='center'垂直对齐 va=''水平对齐
plt.title('体温表') # 图表标题
plt.legend(('基础体温',),fontsize=10,loc=1) #文本显示不全在后面加逗号 loc=1-10各自表一个位置,也可upper left'指定
#bbox_to_anchor(1.05,1) 第一个值左右 第二个值上下 用于微调
plt.annotate('最高气温',xy=(9,37.1),xytext=(10,37),xycoords='data',arrowprops=dict(facecolor='r',shrink=0.005))
#xy=()被注释的点 xytext=()注释文本位置 xycoord被注释点的坐标系属性
plt.subplots_adjust(left=0,right=1,top=1,bottom=0,hspace=0.1,wspace=0.1)
#调整图标与画布间距 取值0-1 左下值越小空白越小 右上值越大空白越少 hspace,wspace调整行列间距
plt.tick_params(bottom=True) #设置四个方向的坐标轴刻度线是否显示
plt.rcParams['xtick.direction']='in' #刻度线显示方向
matplotlib 基本设置
最新推荐文章于 2023-10-19 23:35:41 发布