阅读 701

Python中plt.plot()、plt.scatter()和plt.legend函数的用法示例

今天想要用matplotlib中的plt函数绘制图表,将多个数据曲线在一个图表中进行呈现,下面这篇文章主要给大家介绍了关于Python中plt.plot()、plt.scatter()和plt.legend函数用法的相关资料,需要的朋友可以参考下

目录
  • plt.plot()函数

  • plt.scatter()函数

  • plt.legend()函数

  • 总结

plt.plot()函数

1
plt.plot(x, y, format_string, **kwargs)
参数说明
xX轴数据,列表或数组,可选
yY轴数据,列表或数组
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' 倒三角标记

    • '^' 上三角标记

    • '>' 右三角标记

    • '<' 左三角标记…等等

**kwargs : 第二组或更多(x,y,format_string)

color : 控制颜色, color=‘green’

linestyle : 线条风格, linestyle=‘dashed’

marker : 标记风格, marker=‘o’

markerfacecolor: 标记颜色, markerfacecolor=‘blue’

markersize: 标记尺寸, markersize=20

1
2
3
b = np.arange(5)
plt.plot(b,b*1.0,'g.-',b,b*1.5,'rx',b,b*2.0, 'b')
plt.show()

img

plt.scatter()函数

plt.scatter()函数用于生成一个scatter散点图。

1
matplotlib.pyplot.scatter(x, y, s=20, c='b', marker='o', cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, verts=None, hold=None, **kwargs
参数解释说明
x,y表示的是shape大小为(n,)的数组,也就是我们即将绘制散点图的数据点,输入数据。
s表示的是大小,是一个标量或者是一个shape大小为(n,)的数组,可选,默认20。
c表示的是色彩或颜色序列,可选,默认蓝色’b’。但是c不应该是一个单一的RGB数字,也不应该是一个RGBA的序列,因为不便区分。c可以是一个RGB或RGBA二维行数组。
markerMarkerStyle,表示的是标记的样式,可选,默认’o’。
cmapColormap,标量或者是一个colormap的名字,cmap仅仅当c是一个浮点数数组的时候才使用。如果没有申明就是image.cmap,可选,默认None。
normNormalize,数据亮度在0-1之间,也是只有c是一个浮点数的数组的时候才使用。如果没有申明,就是默认None。
vmin,vmax标量,当norm存在的时候忽略。用来进行亮度数据的归一化,可选,默认None。
alpha标量,0-1之间,可选,默认None。
linewidths标记点的长度,默认None。

例子

1
2
3
4
5
6
7
8
9
10
11
import numpy as np
import matplotlib.pyplot as plt
  
np.random.seed(0)
x=np.random.rand(20)
y=np.random.rand(20)
 
area=(50*np.random.rand(20))**2
  
plt.scatter(x,y,s=area,alpha=0.5)
plt.show()


plt.legend()函数

1.设置图例的位置

1
plt.legend(loc=' ')

2.设置图例字体大小

1
fontsize : int or float or {‘xx-small', ‘x-small', ‘small', ‘medium', ‘large', ‘x-large', ‘xx-large'}

3.设置图例边框及背景

1
2
3
plt.legend(loc='best',frameon=False) #去掉图例边框
plt.legend(loc='best',edgecolor='blue') #设置图例边框颜色
plt.legend(loc='best',facecolor='blue') #设置图例背景颜色,若无边框,参数无效

4.设置图例标题

1
2
3
legend = plt.legend(["BJ", "SH"], title='Beijing VS Shanghai')
#或者
plt.plot(["BJ", "SH"],loc='upper left',title='Beijing VS Shanghai')

5.设置图例名字及对应关系

1
legend = plt.legend([p1, p2], ["BJ", "SH"])

示例

1
2
3
4
5
6
7
8
import matplotlib.pyplot as plt
import numpy as np  
x = np.arange(0,10,1)
plt.plot(x,x,'r--',x,np.cos(x),'g--',marker='*')
plt.xlabel('row')
plt.ylabel('cow')
plt.legend(["BJ","SH"],loc='upper left',loc='upper left')
plt.show()

运行结果

总结

到此这篇关于Python中plt.plot()、plt.scatter()和plt.legend函数用法的文章就介绍到这了

原文链接:https://blog.csdn.net/qq_43186282/article/details/121513266


文章分类
百科问答
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐