plt.legend(loc=’’, title=,fontsize=12, frameon=True, fancybox=True, framealpha=0.2, borderpad=0.3, ncol=1, markerfirst=True, markerscale=1, bbox_to_anchor=,numpoints=1, handlelength=3.5,shadow=)
参数意义:
**loc:**图例位置(‘best’=0, ‘upper right’=1, ‘upper left’=2, ‘lower left’=3, ‘lower right’=4, ‘right’=5, ‘center left’=6, ‘center right’=7, ‘lower center’=8, ‘upper center’=9, ‘center’=10) ,使用了bbox_to_anchor,则该项无效
frameon: 是否显示图例边框
fontsize:字体大小
ncol: 图例的列的数量,默认为1
shadow: 是否为图例边框添加阴影
fancybox: 是否将图例框的边角设为圆形
fancybox: 有4个参数,第一个代表横坐标是图形宽度的几倍,第二个代表纵坐标,同理,第三和第四个表示框的长度和宽度
**num:**图像编号或名称
**figsize:**指定figure的宽和高,单位为英寸;
dpi:参数指定绘图对象的分辨率
**facecolor:**背景颜色
**edgecolor:**边框颜色
**frameon:**是否显示边框
fig=plt.figure()
ax=fig.add_axes([a,b,c,d])
fig.add_axes的参数意义:
将图像移动(a,b)个单位
**a:**距离最左边距离
**b:**距离最下边距离
**c、d:**以左下角为起点的画布长和宽
**string:**标题内容
**family:**字体类别
**size:**字体大小
**color:**字体大小
**style:**风格
**loc:**位置
注意需要将要作为横坐标标签的索引使用pd.to_datetime转换
import numpy as np
import pandas as pd
import os
import matplotlib.pyplot as plt
import matplotlib as mpl
os.chdir(r'C:\Users\MAR\Desktop\新建文件夹')
#读取数据
data=pd.read_csv(r'my_csv_date.csv',encoding='gbk')
print(data)
print(data.dtypes)
#!!!!必须将数据转换成日期型,否则出现没有日期数据无法转换
#data['顺序']=pd.to_datetime(data['顺序'])#和下面一句功能一样
data.顺序=pd.to_datetime(data.顺序)
#计算出按照‘顺序’作为索引的平均值
data1=data.groupby(by='顺序').mean()
print(data1)
print(data1.dtypes)
#解决中文乱码问题
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
#获取当前坐标
ax=plt.gca()
data_format=mpl.dates.DateFormatter('%Y-%m-%d')
ax.xaxis.set_major_formatter(data_format)
# # 设置多少标签
xlocator= mpl.ticker.LinearLocator(12)
# # 自动设置主要标签
ax.xaxis.set_major_locator(xlocator)
plt.plot(data1.index,data1.属1,linestyle='-',linewidth=3,color='blue')
plt.xticks(rotation= -45)
plt.show()
import numpy as np
import pandas as pd
import os
import matplotlib.pyplot as plt
import matplotlib as mpl
os.chdir(r'C:\Users\MAR\Desktop\新建文件夹')
#读取数据,不修改
data=pd.read_csv(r'my_csv_date.csv',encoding='gbk')
print(data)
#将数据重新设置索引分组
plt.bar(x=data.index.values,height=data.属1,linestyle='-',linewidth=3,color='lightblue',\
tick_label=data.顺序)
plt.xticks(data.index,rotation= -45)
#未对信息处理
plt.show()
#对信息求和处理
data=data.groupby(by='顺序').sum()
print(data)
plt.bar(x=data.index.values,height=data.属1,linestyle='-',linewidth=3,color='lightblue',\
tick_label=data.index)
plt.xticks(data.index,rotation= -45)
#无指向型注释文本
plt.text(-1,6,'最大属性',fontsize=15,color='red')
#有指向型,xy表示箭头位置,xytext表示文本开始位置,arrow是字典类型的数据
plt.annotate('最大位置',xy=(2,20),xytext=(4,17),color='orange',fontsize=15,\
arrowprops=dict(arrowstyle='->',connectionstyle='arc3',color='red'))
plt.show()