Python零基础 matplotlib入门(科研图形绘制绝对够用!!!)

最近在阅读一些文献时,发现很多文献中都有各种图表、折线图、离散点图等等,一些数据方面的处理都用表的方法去表示解决,感到很好奇,就去了解了相关内容,发现一切都与python的一个库有关,没错,就是我们今天的主角——matplotlib。
谈到matplotlib这个库,熟悉的伙伴们一定会惊呼,哇这个库真是太香了。
具体有多香,接下来就让我来详细介绍一下!
在这里插入图片描述matplotlib是python的一个库,主要用于绘图,绘制各种坐标系图、折线图、饼状图、条形图、散点图等等,功能强大。
在我们平时用这个库时,只用到了很少的功能,但实现的结果却是十分丰富。我们主要用到matplotlib中的pyplot这个子库。即:

	from matplotlib import pyplot  #导入pyplot库

但由于名字太长,引入别名plt。

	import matplotlib.pyplot as plt

接下来所调用的函数都是plt的子库。

1 plot()

1.1 函数功能

展现自变量X随因变量Y变化的趋势变化图,一般用来绘制曲线图。

1.2 示例代码

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(1,50,20) # 生成从1开始到50结束的20个均匀数值
y = np.cos(x)
plt.plot(x,y,ls="-",color="b",label="line_name") # 设置绘图属性
plt.legend()  #使代码生效,如图例名称
plt.show() #显示图像

参数说明:
x:横坐标轴上的数字
y:纵坐标轴上的数字
ls:折线的风格
color:折线线条的颜色
lw:折线线条的宽度
label:图例的标签名字

color常用颜色简写:

简写颜色
“b”蓝色
“g”绿色
“r”红色
“y”黄色
“k”黑色

ls常用风格简写:

符号含义
“-”实线
“- -”短线(断断续续)
“-.”短点相间线
“:”虚点线

lw线条宽度:对应数字值。 lw = 2

1.3 效果展示

在这里插入图片描述

2 scatter()

2.1 函数功能

寻找自变量X与因变量Y之间的函数关系,并绘制 散点图。

2.2 示例代码

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(2,9,500)
y = np.random.randn(500)

plt.scatter(x,y,s=5,c="b",label="sandiantu")
plt.legend()
plt.show()

参数说明:
s:散点的大小,默认为50
c:散点的颜色,默认为蓝色

2.3 效果展示

在这里插入图片描述

3 xlim()

3.1 函数功能

设置最后输出结果中X轴显示的范围。

3.2 示例代码

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(2,9,500)
y = np.random.randn(500)

plt.scatter(x,y,s=5,c="b",label="sandiantu")
plt.legend()

plt.xlim(1,9)
plt.ylim(0,1) # 显示Y轴的范围
plt.show()

参数说明:
对x轴操作plt.xlim(xmin,xmax),同理对y轴操作plt.ylim(ymin,ymax)

xmin:x轴上的刻度最小值
xmax:x轴上的刻度最大值

3.3 效果展示

在这里插入图片描述

4 xlabel()

4.1 函数功能

设置x轴的标签名字

4.2 示例代码

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.01,12,100)
y = np.cos(x)

plt.plot(x,y,ls="--",color="b",lw="2",label="test")
plt.xlabel("x_mean")
plt.ylabel("y_mean")

plt.legend()
plt.show()

参数说明:

设置坐标轴x轴文本标签xlabel(string);设置y轴文本标签ylabel(string)

4.3 效果展示

在这里插入图片描述

5 grid()

5.1 函数功能

设置背景为网格刻度线的样式

5.2 示例代码

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.1, 10, 100)
y = np.cos(x)
plt.plot(x, y, ls='-', lw=2, c='r', label='grid figure')
plt.legend()

plt.grid(linestyle="-", color='b')
plt.show()

参数说明:

linestyle: 网格线线条风格,:表示虚线,-表示实线

5.3 效果展示

在这里插入图片描述

6 axhline()

6.1 函数功能

绘制平行于x轴的水平参考线
(axvline():绘制平行于y轴的垂直参考线)

6.2 示例代码

x = np.linspace(0.1, 10, 500)
y = np.cos(x)
plt.plot(x, y, ls='-', c='c', lw=2, label='axhline figure')
plt.legend()

plt.axhline(y=0.0, c='r', ls='--', lw=1)
plt.axvline(x=2.0, c='g', ls='--', lw=1)
plt.show()

参数说明:

绘制水平参考线axhline(y=0.0,c=‘r’,ls=‘–’,lw=‘1’)
绘制垂直参考线axvline(x=2.0,c=‘g’,ls=‘–’,lw=‘1’)

y:水平参考线的y轴位置
x::垂直参考线的x轴位置

6.3 效果展示

在这里插入图片描述

7 axvspan()

7.1 函数功能

区域绘制,绘制与x轴垂直的部分区域范围,可以通过颜色表示出来
( axhspan():绘制与y轴垂直的部分区域)

7.2 示例代码

x = np.linspace(0.1, 17, 500)
y = np.sin(x)
plt.plot(x, y, ls='--', lw=2, c='c', label='axvspan figure')
plt.legend()

plt.axvspan(5, 10, facecolor='b', alpha=0.2) # 如图一结果
plt.axhspan(0.0, 0.5, facecolor='g', alpha=0.2) # 如图二结果
plt.show()

参数说明:

绘制垂直与x轴的参考区域:plt.axvspan(xmin=5,xmax=10,facecolor=‘b’,alpha=0.2)

xmin:参考区域的起始位置
xmax:参考区域的终止位置
facecolor:参考区域的填充颜色
alpha:参考区域填充颜色的透明度

7.3 效果展示

图一

图一 图二
在这里插入图片描述

8 annotate()

8.1 函数功能

设置指向性文字标注

8.2 示例代码

 x = np.linspace(0.1, 10, 100)
 y = np.cos(x)
 plt.plot(x, y, ls='-.', lw=2, c='c', label='annotate figure')
 plt.legend()
 plt.annotate('minimum',  # 图形注释的文本
              xy=(3, -1.0),  # 被注释的图形内容坐标
              xytext=(5, -0.75),  # 注释文本位置坐标(左下开始)
              weight='bold',  # 注释文本字体粗细
              color='r',  # 注释文本字体颜色
              arrowprops=dict(arrowstyle='->', connectionstyle='arc3', color='r'))  # 箭头的属性

 plt.show()

参数说明:

添加图形内容细节指向性箭头注释plt.annotate(string,xy=(np.pi,-1.0),xytext=(5,-0.75),weight=‘bold’,color=‘r’,arrowprops=dict(arrowstyle=‘->’,connectionstyle=‘arc3’,color=''r))

string:注释文本内容
xy:被注释的图形位置坐标
xytext:注释的文本坐标
weight:注释的文本的粗细风格
color:注释文本的颜色
arrowprops:注释指向性箭头的属性,属性值字典里包含了箭头的类型、风格、颜色

8.3 效果展示

在这里插入图片描述

9 text()

9.1 函数功能

添加无指向型文本标注

9.2 示例代码

x = np.linspace(0.1, 5, 100)
y = np.tan(x)
plt.plot(x, y, ls='-.', lw=1, c='g', label='text figure')
plt.legend()
plt.text(1,2,"y=tan(x)",weight="bold",color="b")
plt.show()

参数说明:

在图中添加注释文本plt.text(x,y,string,weight=‘bold’,color=‘r’)

x:注释位置的横坐标
y:注释位置的纵坐标
string:注释的文本内容

9.3 效果展示

在这里插入图片描述

10 title()

10.1 函数功能

添加图表的标题

10.2 示例代码

x = np.linspace(0.1,5,100)
y = np.tan(x)
plt.plot(x,y,ls='-.',lw=1,c='c',label='title figure')
plt.legend()

plt.title('y = tan(x) figure')
plt.show()

参数说明:

添加图表标题:plt.title(string)

string:表示标题文本内容

10.3 效果展示

在这里插入图片描述

11 legend()

11.1 函数功能

显示图表图例,并设置图例位置

11.2 示例代码

x = np.linspace(0.1,8,100)
y = np.sin(x)
z = np.cos(x)
plt.plot(x,y,ls='-',lw=1,c='c',label='legend figure 1')
plt.plot(x,z,ls='-.',lw=1,c='r',label='legend figure 2')

plt.legend(loc='lower left')
plt.show()

参数说明:

标识图例plt.legend(loc=‘lower left’)

loc:图例在图表中的位置,值可以设置位置字符串,也可以设置位置代码编号。

位置字符串含义位置代码编号
“best”自动寻找最佳位置0
“upper right”右上1
“upper left”左上2
“lower left”左下3
“lower right”右下4
“right”5
“center left”左中6

11.3 效果展示

在这里插入图片描述好了,到这里关于matplotlib这个库的介绍基本就结束了,一个既实用又简单的库,希望对大家以后的应用有帮助。有问题可以给我留言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱喝猫的咖啡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值