Python-matplotlib画图,柱状图,双柱图,折线图,散点图,饼图,线柱混合图。附代码模板与详细注释
自己整理注释的Python画图合集,包含常见的各种画图类型。
1.Python 饼状图
import numpy as np # 加载数学库用于函数描述
import matplotlib.pyplot as plt###########画ax1 ax1为单柱状图 ################# # 饼状图
# plot.figure(figsize=(8,8))
labels = ['Canteen', 'Supermarket', 'Dorm', 'Others']
sizes = [70, 20, 44, 2] #各个部分的数目 自动计算百分比例
colors = ['r', 'yellow', 'b', 'green']explode = (0.05, 0, 0, 0)#各个部分离圆心距离patches, l_text, p_text = plt.pie(sizes, explode=explode, labels=labels, colors=colors,labeldistance=1.1, autopct='%2.0f%%', shadow=True,startangle=90, pctdistance=0.6)# labeldistance,label的位置离远点有多远,1.1指1.1倍半径的位置
# autopct,圆里面的文本格式,%3.1f%%表示小数有三位,整数有一位的浮点数
# shadow,饼是否有阴影
# startangle,起始角度,0,表示从0开始逆时针转,为第一块。一般选择从90度开始比较好看
# pctdistance,百分比的text离圆心的距离
# patches, l_texts, p_texts,为了得到饼图的返回值,p_texts饼图内部文本的,l_texts饼图外label的文本# 改变文本的大小
# 方法是把每一个text遍历。调用set_size方法设置它的属性
for t in l_text:t.set_size = 30
for t in p_text:t.set_size = 20
# 设置x,y轴刻度一致,这样饼图才能是圆的
plt.axis('equal')
plt.legend(loc='upper left', bbox_to_anchor=(-0.1, 1))
# loc: 表示legend的位置,包括'upper right','upper left','lower right','lower left'等
# bbox_to_anchor: 表示legend距离图形之间的距离,当出现图形与legend重叠时,可使用bbox_to_anchor进行调整legend的位置
# 由两个参数决定,第一个参数为legend距离左边的距离,第二个参数为距离下面的距离
#plt.grid()
plt.show()
效果如图:
2. Python 纯柱状图,单柱与双柱图,柱状图与结合散点图
import numpy as np # 加载数学库用于函数描述
import matplotlib.pyplot as pltx=np.arange(0,10,1)#start stop step 数据
y=x*x+1.5
y1=100-y###########画ax1 ax1为单柱状图 ################fig=plt.figure(1) #新建画布1ax1=fig.add_subplot(2,2,1) #定义子画布 以及位置ax1.set_title("this is a title for ax1") #主标题
ax1.set_ylabel("y lable",c="b") #y左标题
ax1.set_xlabel("x lable") #x标题
ax1.set_xlim(0,10) #x坐标范围
ax1.set_ylim(0,100)ax1.bar(x, y, color="b", alpha=1, label='a')#画散点 alpha 颜色深度
ax1.legend() #添加标签###########画ax2 曲线图 与ax1共用x轴 ################
ax2=ax1.twinx() #共用X轴 twinyax2.plot(x,y1,c="g",label="a2") #点画线
ax2.set_ylabel("y1 label",c="g")
ax2.set_ylim(0,108)
plt.legend()###########画ax3 两个对象的柱状图 ################
fig1=plt.figure(1)
ax3=fig1.add_subplot(2,2,4) #定义字画布位置xtick=("a1","a2","a3","a4","a5","a6","a7","a8","a9","a10")#自己定义x坐标显示
wi=1
plt.xticks(3*x+wi/2,xtick)
ax3.bar(3*x, height=y,width=1,color="r",label=u'superpoint/s')
ax3.bar(3*x+wi,height= y1,width=1,color="b",label=u'SIFT/s')
ax3.legend()#画布3标签plt.show()
效果如图:
3.Python 纯散点图 多类型散点 折线图
import numpy as np # 加载数学库用于函数描述
import matplotlib.pyplot as pltx=np.arange(0,10,1)#start stop step 数据
y=x*x+1.5
y1=100-y###########画ax1 ax1为散点图 ################fig=plt.figure(1) #新建画布1ax1=fig.add_subplot(2,2,1) #定义子画布 以及位置ax1.set_title("this is a title for ax1") #主标题
ax1.set_ylabel("y lable",c="b") #y左标题
ax1.set_xlabel("x lable") #x标题
ax1.set_xlim(0,10) #x坐标范围
ax1.set_ylim(0,100)ax1.scatter(x, y, s=1, c="b", alpha=0.1, label='a')#画散点 alpha 颜色深度
ax1.legend() #添加标签
# loc: 表示legend的位置,包括'upper right','upper left','lower right','lower left'等###########画ax2 曲线图 与ax1共用x轴 ################
ax2=ax1.twinx() #共用X轴 twinyax2.plot(x,y1,c="g",label="a2") #点画线
ax2.set_ylabel("y1 label",c="g")
ax2.set_ylim(0,108)
ax2.legend()###########画ax3 点线共存图 另开字画部 ################
fig1=plt.figure(1)
ax3=fig1.add_subplot(2,2,4)
ax3.plot(x, y,'o-',c="r",label=u'superpoint/s')
ax3.legend()
plt.show()
效果如图:(子图1类型a是稀疏蓝点 有点看不清楚)
Python-matplotlib画图,柱状图,双柱图,折线图,散点图,饼图,线柱混合图。附代码模板与详细注释相关推荐
- 数据可视化实验:python数据可视化-柱状图,条形图,直方图,饼图,棒图,散点图,气泡图,雷达图,箱线图,折线图
数据可视化实验:python数据可视化 实验8-12:大数据可视化工具-python 目录 1柱状图 2条形图 3直方图 4饼图 5棒图 6散点图 7气泡图 8雷达图 9箱线图 10折线图 1柱状图 ...
- python word保存图_使用python matplotlib 画图导入到word中如何保证分辨率
在写论文时,如果是菜鸟级别,可能不会花太多时间去学latex,直接用word去写,但是这有一个问题,当我们用其他工具画完实验彩色图时,放到word中会有比较模糊,这有两个原因导致的. 原因一:图片导入 ...
- python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题
最近想学习一些python数据分析的内容,就弄了个爬虫爬取了一些数据,并打算用Anaconda一套的工具(pandas, numpy, scipy, matplotlib, jupyter)等进行一些 ...
- python matplotlib 画图 不显示中文 中文乱码 设置中文字体
在使用python matplotlib 画图时,由于matplotlib 默认是使用DejaVu Sans这种字体,不支持中文,所以我们在使用matplotlib画图包含中文内容要显示时就会变成方框 ...
- python matplotlib画图产生的Type 3 fonts字体没有嵌入问题
ScholarOne's 对python matplotlib画图产生的Type 3 fonts字体不兼容,更改措施: 在程序中添加如下语句 import matplotlib matplotlib. ...
- Python matplotlib画图出现No handles with labels found to put in legend
1.在使用Python matplotlib画图出现No handles with labels found to put in legend ,在本地调试时并不会出现这个错误,而部署到线上服务器之后 ...
- 解决Linux系统中python matplotlib画图的中文显示问题
解决Linux系统中python matplotlib画图的中文显示问题 参考文章: (1)解决Linux系统中python matplotlib画图的中文显示问题 (2)https://www.cn ...
- python画图模糊_使用python matplotlib 画图导入到word中如何保证分辨率
在写论文时,如果是菜鸟级别,可能不会花太多时间去学latex,直接用word去写,但是这有一个问题,当我们用其他工具画完实验彩色图时,放到word中会有比较模糊,这有两个原因导致的. 原因一:图片导入 ...
- Python matplotlib 画图 显示中文 中文乱码 无法显示负号
Python matplotlib 画图 显示中文 中文乱码 无法显示负号 import matplotlib.pyplot as pltplt.rcParams["font.sans-se ...
最新文章
- 2021 年 5 月程序员工资统计,惨不忍睹。。。
- java程序测试总结_Java测试总结(ATM)
- J - Just Multiplicative Inverse Gym - 102875J
- Makefile浅尝
- MySQL+Tomcat+JVM,看完还怕面试官
- Html5中的徽章,CSS 常见样式 特殊用法 贯穿线徽章箭头
- MVC中如何实现本地化的解决方案
- Code Chef May Challenge 2019题解
- [USACO 1.5.1]数字金字塔
- java案例代码9-冒泡算法:
- huhamhire-hosts
- 怎样在微信公众平台上传文件给别人下载
- EasyOrtho卫星影像处理软件
- 使用结构化思维,让工作有条不紊
- Python 【趣头条】短视频的自动上传与发布实例演示,同时支持抖音、快手、哔哩哔哩、小红书、微视、西瓜视频、微信视频号等平台的视频自动化同步发布
- 盛大是中国互联网最耀眼的流星
- 辉芒微IO单片机FT60F12F-MRB
- 四川大学计算机学院硕士毕业要求,四川大学计算机学院(软件学院)2020年非全日制硕士研究生接受调剂生的通知...
- pg 百万数据表 添加序号 20秒轻松搞定
- 2019 小米校招笔试题 小米大礼包
热门文章
- css3实现好看的边框效果
- 强大的第三方视频播放器。
- php 修改word内容,php如何替换word内容
- IOS 使用TestFlight 详解
- 【Ubuntu系统】ubuntu18.04磁盘空间满了无法进入系统(3种方式,已解决)
- 小米无线AR眼镜探索版细节汇总
- 1.3双摇杆遥控器电路部分--基本外设电路(ST-link下载、串口、按键、摇杆、电量检测、LED指示灯、0.96寸OLED、NRF24L01)
- 校友小程序定制开发 带我们回到那个学生时代
- 基于android的智慧停车app
- 银行利息,活期,定期,本金知识集锦!