python画图入门例子
figure :n. 数字,数目,数值;数字符号,位数;身材,体型;(远处的)人影;(重要的)人物;(绘画或模型中)人像;(书中的)图、表;(数学)图形;价格,金额
plot :n. 阴谋,密谋;情节;(专用的)小块地;(表现两个变量关系的)图表;<美>图表,地图;<美>底层平面图
所以,fig=plt.figure(num=1,figsize=(6,4)) 是创建一个图形底板;
ax=fig.add_subplot() 是在图形上创建一个区域;
可以在图形上直接画图
import matplotlib.pyplot as pltplt.figure(num=1,figsize=(4,4))
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y)
plt.show()
plt.plot(x, y, format_string, **kwargs)
参数 | 说明 |
---|---|
x
|
X轴数据,列表或数组,可选 |
y
|
Y轴数据,列表或数组 |
format_string
|
控制曲线的格式字符串,可选 |
**kwargs
|
第二组或更多(x,y,format_string),可画多条曲线 |
format_string
由颜色字符、风格字符、标记字符组成
- 颜色字符
'b'
蓝色'm'
洋红色 magenta'g'
绿色'y'
黄色'r'
红色'k'
黑色'w'
白色'c'
青绿色 cyan'#008000'
RGB某颜色'0.8'
灰度值字符串- 多条曲线不指定颜色时,会自动选择不同颜色
- 风格字符
'‐'
实线'‐‐'
破折线'‐.'
点划线':'
虚线'' ' '
无线条
- 标记字符
'.'
点标记','
像素标记(极小点)'o'
实心圈标记'v'
倒三角标记'^'
上三角标记'>'
右三角标记'<'
左三角标记...等等
也可以在图形的小区域上画图
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(4, 4))
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
ax = fig.add_subplot()
ax.plot(x, y)
plt.show()
想要划分多个小区域,可以使用 ax = fig.add_subplot(325) # 劃分3行2列區域,取第5個
add_subplot(xyz)第一个数字x代表行数,第二个数字y代表列数,第三个数字z表示取第z个小区域(先取第一行,从左到右)。
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(9, 9))
ax1 = fig.add_subplot(221) # 劃分2行2列區域,取第1個
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax2 = fig.add_subplot(233) # 劃分2行3列區域,取第3個
ax2.plot([1, 2, 3, 4], [2, 2, 3, 4])
ax3 = fig.add_subplot(325) # 劃分3行2列區域,取第5個
ax3.plot([1, 2, 3, 4], [1, 2, 2, 4])
ax4 = fig.add_subplot(224) # 劃分2行2列區域,取第4個
ax4.plot([1, 2, 3, 4], [1, 2, 3, 3])
plt.show()
很显然,上边那种方式划分11行9列就做不到。
将参数间省略的逗号加上去就可以了。
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(9, 9))
ax1 = fig.add_subplot(11, 9, 1) # 劃分11行9列區域,取第1個
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax2 = fig.add_subplot(2, 3, 3) # 劃分2行3列區域,取第3個
ax2.plot([1, 2, 3, 4], [2, 2, 3, 4])
ax3 = fig.add_subplot(3, 2, 5) # 劃分3行2列區域,取第5個
ax3.plot([1, 2, 3, 4], [1, 2, 2, 4])
ax4 = fig.add_subplot(2, 2, 4) # 劃分2行2列區域,取第4個
ax4.plot([1, 2, 3, 4], [1, 2, 3, 3])
plt.show()
另外一种划分区域的方法,相当于先做一个网格,然后进行跨行跨列合并。
import matplotlib.pyplot as plt
from matplotlib import gridspecfig = plt.figure(num=1, figsize=(6, 6)) # 创建画布
gs = gridspec.GridSpec(3, 3) # 设定3*3的网格,使用下标时从0开始
ax1 = fig.add_subplot(gs[0, :]) # 第1行,所有列
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax2 = fig.add_subplot(gs[1, :-1]) # 第2行,倒数第一列之前的所有列
ax2.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax3 = fig.add_subplot(gs[1:, -1]) # 第2行之后的所有行,倒数第一列
ax3.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax4 = fig.add_subplot(gs[2, 0]) # 第3行,第1列
ax4.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax5 = fig.add_subplot(gs[2, 1]) # 第3行,第2列
ax5.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.show()
注意, 子区域可能会相互重合,并且后创建的子区域会覆盖在先创建的子区域上面。
下边我们手动限制刻度范围,set_xlim()、set_ylim()
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(6, 6))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('exp') # 添加标题
ax1.set_xlim(1, 7.1) # x轴限制坐标从1到7.1
ax1.set_ylim(-10, 10) # y轴限制坐标从-10到10
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.show()
上边我们都是自动生成的刻度,现在我们手动设置刻度,set_xticks()、set_yticks()
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(6, 6))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('exp') # 添加标题
ax1.set_xticks([1, 1.5, 3, 4, 5, 6, 8, 10]) # x轴刻度
ax1.set_yticks([5, 10, 20, 30, 40]) # y轴刻度
ax1.set_xlim(1, 7.1) # x轴限制坐标从1到7.1
ax1.set_ylim(-10, 10) # y轴限制坐标从-10到10
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.show()
后设置的坐标范围,会限制刻度的显示,如果先设置坐标范围,再设置刻度,情况会不一样
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(6, 6))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('exp') # 添加标题
ax1.set_xlim(1, 7.1) # x轴限制坐标从1到7.1
ax1.set_ylim(-10, 10) # y轴限制坐标从0到100
ax1.set_xticks([1, 1.5, 3, 4, 5, 6, 8, 10]) # x轴刻度
ax1.set_yticks([5, 10, 20, 30, 40]) # y轴刻度
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.show()
set_xticklabels()可以将X轴对应数值变成label,对应Y轴方法为set_yticklabels()
注意,如果不设置set_xticks()只设置set_xticklabels(),则X轴会自动平均设置刻度,并将相应的label附上
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(6, 6))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('exp') # 添加标题
ax1.set_xlim(1, 7.1) # x轴限制坐标从1到7.1
ax1.set_ylim(-10, 10) # y轴限制坐标从0到100
ax1.set_xticks([1, 1.5, 3, 4, 5, 6, 8, 10]) # x轴刻度
ax1.set_yticks([5, 10, 20, 30, 40]) # y轴刻度
ax1.set_xticklabels(['one', 'two', 'four', 'six', 'eight', 'ten', 'x', 'xx'])
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
plt.show()
使用 ax2 = ax1.twinx() 创建右侧Y轴对应的图形,同样,有 ax1.twiny()方法
import matplotlib.pyplot as pltfig = plt.figure(num=1, figsize=(6, 6))
ax1 = fig.add_subplot(1, 1, 1)
ax1.set_title('exp') # 添加标题
ax1.set_xlim(1, 7.1) # x轴限制坐标从1到7.1
ax1.set_ylim(-10, 10) # y轴限制坐标从0到100
ax1.set_xticks([1, 1.5, 3, 4, 5, 6, 8, 10]) # x轴刻度
ax1.set_yticks([5, 10, 20, 30, 40]) # y轴刻度
ax1.set_xticklabels(['one', 'two', 'four', 'six', 'eight', 'ten', 'x', 'xx'])
ax1.plot([1, 2, 3, 4], [1, 2, 3, 4])
ax1.set_ylabel('line1')ax2 = ax1.twinx()
ax2.plot([1, 3, 5, 8], [3, 7, 3, 5])
ax2.set_ylabel('line2')
plt.show()
python画图入门例子相关推荐
- python画图入门
python画图入门 基本画图 画图参数 线条形状 点形状 颜色 RC参数类型 plot内设置 plot内简化设置 时隔很久,我又掏出了我的笔,python小白,一点点来.Punchline~ 基本画 ...
- Python爬虫入门例子-运满满的货运信息
爬虫 周末没事想试一下Python的爬虫,跟着网上试了一个爬虎扑的 原文虎扑爬虫 然后试了一下一个货运信息网站,运满满,还专门安装了pycharm,大点的编译器,用来做项目.毕竟刚学Python,所以 ...
- python画图颜色表示大小变化_python画图(线条颜色、大小、类型:点、虚线等)(图文详细入门教程四)...
初衷 本人由于平常写论文需要输出一些结果图,但是苦于在网上搜python画图时,详细的教程非常多,但是就是找不到能马上解决自己问题那一行代码,所以打算写一些适合需求简单的朋友应急用的教程,应急就必须方 ...
- python画图marker显示_python画图(标记、marker、设置标记大小、marker符号大全)(图文详细入门教程五)...
初衷 本人由于平常写论文需要输出一些结果图,但是苦于在网上搜python画图时,详细的教程非常多,但是就是找不到能马上解决自己问题那一行代码,所以打算写一些适合需求简单的朋友应急用的教程,应急就必须方 ...
- python画图(标记、marker、设置标记大小、marker符号大全)(图文详细入门教程五)
初衷 本人由于平常写论文需要输出一些结果图,但是苦于在网上搜python画图时,详细的教程非常多,但是就是找不到能马上解决自己问题那一行代码,所以打算写一些适合需求简单的朋友应急用的教程,应急就必须方 ...
- python画图(标记、marker、设置标记大小、marker符号大全)
初衷 本人由于平常写论文需要输出一些结果图,但是苦于在网上搜python画图时,详细的教程非常多,但是就是找不到能马上解决自己问题那一行代码,所以打算写一些适合需求简单的朋友应急用的教程,应急就必须方 ...
- python从入门到大师_Python趣味打怪:60秒学会一个例子,147段简单代码助你从入门到大师 | 中文资源...
人生苦短,编程苦手,不妨学起Python,感受一飞冲天的快乐. 不要害怕学习的过程枯燥无味,这里有程序员jackzhenguo打造的一份中文Python"糖果包":147个代码小样 ...
- python画图零基础入门教程_Python画图学习入门教程
本文实例讲述了Python画图的基本方法.分享给大家供大家参考,具体如下: Python:使用matplotlib绘制图表 python绘制图表的方法,有个强大的类库matplotlib,可以制作出高 ...
- Python爬虫入门学习例子之煎蛋网(福利哦)
初学Python爬虫,学习资料是这篇博客:Python爬虫入门教程 经过前边两个例子(糗事百科爬虫和百度贴吧爬虫)的学习,我自己写了一个练习的例子:爬煎蛋网的妹子图,福利哦(*^__^*) #煎蛋网爬 ...
最新文章
- 【leetcode】Remove Linked List Elements(easy)
- 程序员十大非技术面试问题及策略
- 基础知识(十五)Cmake
- 移动设备的界面设计尺寸
- 安卓应用安全指南 5.6.3 密码学 高级话题
- WindowsServers2019上手体验
- AppWeb服务后台登陆及配置的方法解答
- MySQL取每组的前N条记录
- 【专利】实用新型专利设计模板
- 借助Bodymovin播放svg动画
- 2021陈文灯数学复习指南百度云_【干货分享】21考研数学:高等数学常用公式、定理汇总(含打印版)...
- tbopen链接生成工具_影视、航空行业都在用的短链接工具,免费短链接生成器?...
- 单片机最小系统着实让人着迷
- 论文阅读-2022.1.2-A Neural Network Approach for_2016_一种用于知识驱动响应生成的神经网络方法
- android开发艺术探索3:IPC--AIDL(跨进程)的使用
- 我有酒,你有故事吗?
- 松鼠分松果解题 c++
- 托福百日冲刺(五一记忆)(1)
- 3d游戏场景建模设计师需要学哪些软件?
- 如何在浏览器中运行Linux程序,如何在Chromebook的浏览器标签中运行完整的Linux桌面 | MOS86...