0
点赞
收藏
分享

微信扫一扫

matplotlib的基本图表配置之plot的使用(一)


基本介绍

前期我们对Python的第三方库pyecharts进行了详细的介绍了,本期我们将开启Python的另一个第三方库matplotlib进行深入的学习和实践。

对于matplotlib而言,它的优势最大在于,可以使用少量的代码完成基本的图形绘制,但是对于pyecharts一般的炫酷的图标都是需要使用一些丰富的代码框架进行渲染的,matplotlib大部分是生成本地的静态图形,而pyecharts是生成网页版的动态可视化,二者的使用场景各有各的优势。

可以灵活的通过选择,达到我们业务所需;也可以结合不同的实际情况,改造和配置图形的基本结构。
导入模块

import matplotlib.pyplot as

直接调用plot()函数对列表数据绘图

plt.plot(x, y, fmt=‘xxx’, linestyle=, marker=, color=, linewidth=, markersize=, label=, )

  • x:点的横坐标,可迭代对象
  • y:点的纵坐标,可迭代对象
  • fmt = ‘#color#linestyle#marker’
  • linestyle:线的样式,字符串

linestyle

线形

‘-’

实线

‘–’

虚线

‘-.’

点划线

‘:’

点虚线

’ ’

无线

  • linewidth:线的粗细,数值
  • marker:点的样式,字符串

marker

标记点

‘.’


‘,’

像素

‘^’ ‘v’ ‘>’ ‘<’

上下左右三角形

‘1’ ‘2’ ‘3’ ‘4’

上下左右三叉线

‘o’

圆形

‘s’ ‘D’

方形

‘p’

五边形

‘h’ ‘H’

六边形

‘*’

五角星

‘+’ ‘x’

十字交叉

‘_’

横线



  • markersize: 点的大小,数值
  • color: 颜色,字符串

color

字符串

‘r’


‘g’

绿

‘b’


‘y’


‘c’


‘m’


‘k’


‘w’


RGB颜色:三原色

R G B

1 1 1 (1byte)

11111111 11111111 11111111 (8bit)

255 255 255 (10进制)

FF FF FF (16进制)

red: #FF0000

yellow: #FFFF00

black: #000000

white: #FFFFFF

label:图例,legend文字

matplotlib图的组成:

  • Figure (画布)
  • Axes (坐标系)
  • Axis (坐标轴)
  • 图形(plot(),scatter(),bar(),…)
  • Title, Labels, …

基本示例

x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,linestyle=':', linewidth=1, marker='^', markersize=10, label='1234')
plt.legend()

matplotlib的基本图表配置之plot的使用(一)_xlim


这里x和y所代表的是数据源,其次linestyle=‘:’代表的是点虚线,然后设置了线条的长度,marker=’^'代表的是下三角形的,markersize是设置的图标的大小,label是图形的标题。

有的小伙伴觉得这个图表的配置比较的复杂,其实在真实的绘制场景中,一般代码的编写也是比较的简单的,主要是需要对每一个配置元素了解,然后就可以快速的配置和设置。

改变图标形状

x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,marker='o')

matplotlib的基本图表配置之plot的使用(一)_字符串_02


改变颜色

x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,color='m')

matplotlib的基本图表配置之plot的使用(一)_matplotlib_03


改变线条格式

x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,linestyle='--')

matplotlib的基本图表配置之plot的使用(一)_字符串_04


编程是为了什么,快速的解决我们所需的场景的难题,那么每一次绘制图形,我们都需要对其进行各个配置,肯定会让我们的时间大幅度的增加,再这样的情况下,有没有简单的方法帮助我们快速化编程,可以看一下下面的例子

import numpy as np
x = np.linspace(-100,100,10)
y = x**2 + 2*x +1
plt.plot(x,y,'g-.o')

g:绿色;-.:点划线;o:圆形

matplotlib的基本图表配置之plot的使用(一)_matplotlib_05


设置X轴的范围使用plt.xlim(X0,X1)

虽然一般程序会自动根据数据的范围来调整X轴的范围,但为了更加的精确的图形展示,有必要了解一下这个方法。

import numpy as np
x = np.linspace(-100,100,10000)
y = np.sin(x)
plt.plot(x,y,'g-.')
plt.xlim(-np.pi,np.pi)

matplotlib的基本图表配置之plot的使用(一)_xlim_06

fig,ax = plt.subplots()
theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z ** 2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)
ax.plot(x, y, label='parametric curve')
ax.legend()

matplotlib的基本图表配置之plot的使用(一)_xlim_07

每文一语

每天一点点,可能就不会耽误时间了


举报

相关推荐

0 条评论