
Matplotlib导包importmatplotlib.pyplotaspltMatplotlib全局设置# 设置字体plt.rcParams[font.sans-serif][SimHei]# 设置负号plt.rcParams[axes.unicode_minus]FalseMatplotlib快速使用例子# 1.创建画布plt.figure()# 2.绘制图像(x轴y轴)plt.plot([1,2,3],[3,2,1])# 3.显示图像plt.show()显示结果自定义X与Y刻度X 轴刻度plt.xticks()Y 轴刻度plt.yticks()参数 含义ticks 数字刻度位置必须是数值列表决定刻度画在哪些坐标点labels 对应位置显示的文字标签长度必须和 ticks 一致rotation 标签旋转角度x 轴常用rotation45防重叠fontsize 刻度文字字号color 刻度文字颜色ha 水平对齐left/center/rightva 垂直对齐minor 是否设置次刻度例子x[1,2,3]y[2,2,3]plt.xticks([1,2,3])plt.yticks([1,2,3],[一,二,三])plt.plot(x,y)plt.show()图形风格标记、线条、颜色fmt 极简格式串格式[marker][line][color] 顺序可打乱标记 marker符号含义.小点o实心圆s正方形^上三角v下三角 左右三角*星号D菱形 x十字、叉号线型 line符号线型-实线默认–虚线-.点划线:点状线空无线条只画标记点颜色 color简写颜色b蓝g绿r红c青m品红y黄k黑w白网格参数plt.grid(bNone,# 是否显示网格 True/Falsewhichmajor,# 作用于主刻度/次刻度/全部axisboth,# 对x轴、y轴、两者生效linestyle-,# 线型linewidth0.8,# 线宽colorgray,# 颜色alpha0.3,# 透明度 0~1**kwargs)添加描述信息标题标签常用参数fontsize字号fontweight字重 bold 加粗color文字颜色pad标题距离图表上方间距plt.title()X与Y轴标签plt.xlabel()plt.ylabel()图片保存plt.savefig(fnamepic.png,# 文件名后缀决定格式png/jpg/svg/pdfdpi300,# 分辨率数值越大越清晰bbox_inchestight,# 自动裁掉四周多余白边必加facecolorwhite,# 画布背景色透明填 noneedgecolornone,pad_inches0.1# 裁剪后预留少量边距)要在plt.show()之前保存图片它会释放资源之后保存就是空图片设置显示图例plt.legend函数plt.legend(handlesNone,# 自定义需要显示图例的绘图对象列表可只展示部分线条/图形labelsNone,# 手动指定图例文字列表会覆盖绘图时label参数设置的内容locbest,# 图例在绘图区内的预设位置支持字符串/数字编码默认自动选遮挡最少区域bbox_to_anchorNone,# 以(横坐标,纵坐标)指定图例锚点位置常配合loc把图例放到图表外侧ncol1,# 图例分列数量默认1列竖排设为多列可横向平铺多个图例项fontsizeNone,# 图例正文文字字号大小frameonTrue,# 是否给图例添加外边框True显示边框False隐藏边框facecolorNone,# 图例背景填充颜色不指定则使用默认画布背景色edgecolorNone,# 图例边框线条颜色titleNone,# 给图例整体添加标题文字title_fontsizeNone,# 图例标题单独设置字号区别于图例条目文字shadowFalse# 是否给图例框添加阴影效果True开启阴影默认关闭)参数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整张图表正中心绘制多个图像例子importmatplotlib.pyplotaspltimportnumpyasnp# 设置字体plt.rcParams[font.sans-serif][SimHei]# 设置负号plt.rcParams[axes.unicode_minus]False# 以元组的形式返回结果(画布对象坐标轴对象) 创建了2行一列的画布fig,axesplt.subplots(nrows2,ncols1,figsize(10,5),dpi100)# pad 增大子图间距默认pad1plt.tight_layout(pad3)# 生成武汉和随州的温度数据xrange(30)wuhan[np.random.uniform(15,25)foriinx]suizhou[np.random.uniform(10,19)foriinx]#索引上边图像设置数据axes[0].plot(x,wuhan)#索引下边图像axes[1].plot(x,suizhou)# 设置上边图像的y坐标轴15到25步长为3axes[0].set_yticks(range(15,25)[::3])# 设置上边图像的x坐标轴axes[0].set_xticks(x[::5])# 设置标题和标签axes[0].set_title(武汉)axes[0].set_ylabel(气温)axes[0].set_xlabel(日期,locleft)# 放在左边axes[1].set_title(随州)# 显示图像# plt.show()结果Matplotlib官方案例图英文原版稳定最新https://matplotlib.org/stable/gallery/index.html中文翻译版国内访问友好https://matplotlib.net.cn/stable/gallery/index.html常见图形折线图以折线的上升或下降来表示统计数量的增减变化的统计图# 折线图# 设置画布plt.figure(figsize(10,5),dpi100)# 数据data[5,10,6,8,3]# 绘制折线图plt.plot(data,colorb)# 显示plt.show()柱状图排列在工作表的行或列中的数据可以绘制到柱状图中# 柱状图categories[A,B,C,D]values[1,2,3,4]plt.bar(categories,values,colorr)plt.title(柱状图)plt.xlabel(种类)plt.ylabel(数量)plt.show()直方图由一系列高度不等的纵向条纹或线段表示数据分布的情况。一般横轴表示数据范围纵轴表示分布情况# 直方图#设置画布plt.figure(figsize(10,5),dpi100)#数据datanp.random.random(100)#直方图plt.hist(data,bins30,colorr)#显示plt.show()饼图用于表示不同分类的占比情况通过弧度大小来对比各种分类# 饼图# 设置画布plt.figure(figsize(10,5),dpi100)#数据sizes[25,35,25,15]labels[category_A,category_B,category_C,category_D]# 绘制饼图显示百分比plt.pie(sizes,labelslabels,autopct%1.1f%%)# 显示图表plt.show()散点图用两组数据构成多个坐标点考察坐标点的分布判断两变量之间是否存在某种关联或总结坐标点的分布模式# 散点图x[1,2,3,4,5]y[2,3,5,7,9]# 设置画布plt.figure(figsize(10,5),dpi100)# 绘制散点图plt.scatter(x,y,colorr)# 显示plt.show()