亲宝软件园·资讯

展开

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

Sunny.T 人气:0

plt.plot()函数

plt.plot(x, y, format_string, **kwargs)
参数说明
xX轴数据,列表或数组,可选
yY轴数据,列表或数组
format_string控制曲线的格式字符串,可选
**kwargs第二组或更多(x,y,format_string),可画多条曲线

format_string 由颜色字符、风格字符、标记字符组成

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

运行结果

总结

加载全部内容

相关教程
猜你喜欢
用户评论