文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

【Matplotlib】plt.figure()、plt.subplot() 、plt.subplots() 、plt.xticks() 、plt.xlim()和 plt.grid() 六个函数的使用

2023-09-04 18:16

关注

系列文章目录


 Python中 matplotlib库的学习


目录

系列文章目录

前言

一、 plt.figure()

二、plt.subplot() 

三、plt.subplots() 

四、plt.xticks() 

五、plt.xlim()

六、plt.grid()

总结


前言

Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。 Pyplot是Matplotlib模块的基于状态的接口,该模块提供了MATLAB-like接口。在Pyplot中可以使用各种图,例如线图,轮廓图,直方图,散点图,3D图等。


一、 plt.figure()

Matplotlib中的 pyplot.figure() 函数的作用就是创建一个图像,一般和plt.subplot() 一起用,下面会讲,subplot 就是创建子图。

先来看一下plt.figure() 的官方文档.

matplotlib.pyplot.figure(num=None, figsize=None, dpi=None, facecolor=None,edgecolor=None, frameon=True, FigureClass=, clear=False, **kwargs)

其中:

具体用法可以看下面的代码。

二、plt.subplot() 

在 Matplotlib 中 plt.subplot() 就是用来创建单个子图的。

先来看一下官方文档。

subplot(nrows,ncols,sharex,sharey,subplot_kw,**fig_kw)

其中:

subplot可以将figure划分为n个子图,但每条subplot命令只会创建一个子图 ,如果要绘制多个子图,可以考虑使用for 循环。

# 设置数据x = np.arange(0, 3, 0.1)y1 = np.sin(np.pi*x)y2 = np.cos(np.pi*x)plt.figure(figsize = (10,6), facecolor = 'r', edgecolor = 'y')# 绘制第一个子图plt.subplot(211)  plt.plot(x, y1)  # 绘制第二个子图plt.subplot(212)  plt.plot(x, y2)  

输出结果:

 从上面绘制的两个子图可以了解到figure 和 subplot 的基本用法了,要注意每条subplot命令只会创建一个子图

三、plt.subplots() 

在 Matplotlib 中 plt.subplots() 的用法和subplot() 相似,subplots 可以创建多个子图。前面说了每条subplot命令只会创建一个子图,但是subplots 不一样,直接上代码看看。

# 设置数据x = np.arange(0, 3, 0.1)y1 = np.sin(np.pi*x)y2 = np.cos(np.pi*x)y3 = np.sin(2*np.pi*x)y4 = np.cos(2*np.pi*x)# 创建figureplt.figure(figsize = (10,6), facecolor = 'r', edgecolor = 'y')# 划分子图fig,axes=plt.subplots(2,2)ax1=axes[0,0]ax2=axes[0,1]ax3=axes[1,0]ax4=axes[1,1]# 绘制4 个子图ax1.plot(x, y1)ax2.plot(x, y2)ax3.plot(x, y3)ax4.plot(x, y4)plt.show()   

输出结果:

四、plt.xticks() 

在 Matplotlib 中 plt.ticks() 函数 表示的是刻度, plt.xticks() 就表示x 轴刻度,plt.yticks() 就表示y 轴刻度。

其实plt.xticks() 返回两个对象,一个是刻标(locs),另一个是刻度标签,不过这些我们先不了解。只需要知道它是表示刻度的就行。

plt.figure(figsize = (20,10))plt.subplot(2,3,1)

输出结果:

​plt.figure(figsize = (20,10))plt.subplot(2,3,1)plt.xticks([]) # 不显示x 轴刻度plt.yticks([])   # 不显示y 轴刻度​

输出结果

从输出结果可以知道, plt.xticks([])  就是表示不显示x 轴的刻度; plt.yticks([])  就是表示不显示y 轴的刻度

plt.figure(figsize = (20,10))for i in range(3):    plt.subplot(2,3,i+1)plt.xticks(np.arange(3)) # 设置横坐标为只有0和1两个刻度

输出结果:ticks 还可以指定显示的刻度,  plt.xticks(np.arange(3)) 就将生成的最后一个图的横坐标设置为只有0、1和2三个刻度 。

五、plt.xlim()

在 Matplotlib中的 plt.xlim() 函数用来显示x轴的作图范围,plt.ylim() 用来显示y轴的作图范围。

# plt.xlim()# 设置figureplt.figure(figsize = (10,6))# 绘制第一个子图plt.subplot(2,1,1)plt.plot(x, 2*x)# 绘制第二个子图plt.xlim(0, 2)    # 限制x 轴作图的范围在(0,2)plt.subplot(2,1,2)plt.plot(x, 2*x)# 显示绘制的图像的y 轴取值范围plt.ylim()

输出结果:

可以看见,如果plt.xlim() 在绘图之前用会限制绘图的范围,如果绘图完成后用,则会输出x轴的范围值;对于plt.ylim() 也是一样的。

六、plt.grid()

在 Matplotlib中的 plt.grid() 函数 就是绘制网格的意思,它的作用就是可以给图生成网格。

先来看一下官方文档

matplotlin.pyplot.grid(b, which, axis, color, linestyle, linewidth, **kwargs)

其中:

plt.figure(figsize = (20,10))for i in range(3):    plt.subplot(2,3,i+1)    plt.grid(b = True, axis = 'both', color = 'red', linestyle = '-', linewidth = 3)

输出结果:

 可以看见plt.grid() 默认是会生成网格的。

plt.figure(figsize = (20,10))for i in range(3):    plt.subplot(2,3,i+1)    plt.grid(b = 1, axis='y', c = 'y', ls = '--')

输出结果:

 设置参数1 和 True 的效果是一样的,后面axis 表示画布,'x'就是绘制x 轴, 'y' 就是绘制y 轴。


总结

Matplotlib是Python中的一个库,它是数字的-NumPy库的数学扩展。本文主要讲解了其中的

plt.figure()plt.subplot() plt.subplots() plt.xticks() plt.xlim()和 plt.grid() 六个函数的使用。

来源地址:https://blog.csdn.net/m0_51816252/article/details/126103183

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯