plt.plot()、plt.scatter()和plt.legend函数

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

plt.plot()、plt.scatter()和plt.legend函数

Sunny.T   2022-05-28 我要评论

plt.plot()函数

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

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散点图。

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。

例子

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.设置图例的位置

plt.legend(loc=' ')

2.设置图例字体大小

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

3.设置图例边框及背景

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

4.设置图例标题

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

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

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

示例

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()

运行结果

总结

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们