matplotlib的基本图表配置之plot的使用(一)
基本介绍
前期我们对Python的第三方库pyecharts进行了详细的介绍了,本期我们将开启Python的另一个第三方库matplotlib进行深入的学习和实践。
对于matplotlib而言,它的优势最大在于,可以使用少量的代码完成基本的图形绘制,但是对于pyecharts一般的炫酷的图标都是需要使用一些丰富的代码框架进行渲染的,matplotlib大部分是生成本地的静态图形,而pyecharts是生成网页版的动态可视化,二者的使用场景各有各的优势。
可以灵活的通过选择,达到我们业务所需;也可以结合不同的实际情况,改造和配置图形的基本结构。
导入模块
import matplotlib.pyplot as plt
直接调用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()
这里x和y所代表的是数据源,其次linestyle=‘:’代表的是点虚线,然后设置了线条的长度,marker=’^'代表的是下三角形的,markersize是设置的图标的大小,label是图形的标题。
有的小伙伴觉得这个图表的配置比较的复杂,其实在真实的绘制场景中,一般代码的编写也是比较的简单的,主要是需要对每一个配置元素了解,然后就可以快速的配置和设置。
改变图标形状
x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,marker='o')
改变颜色
x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,color='m')
改变线条格式
x = [1,2,3]
y = [1,2,3]
y = x
plt.plot(x,y,linestyle='--')
编程是为了什么,快速的解决我们所需的场景的难题,那么每一次绘制图形,我们都需要对其进行各个配置,肯定会让我们的时间大幅度的增加,再这样的情况下,有没有简单的方法帮助我们快速化编程,可以看一下下面的例子
import numpy as np
x = np.linspace(-100,100,10)
y = x**2 + 2*x +1
plt.plot(x,y,'g-.o')
g:绿色;-.:点划线;o:圆形
设置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)
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()
每文一语
每天一点点,可能就不会耽误时间了
文章来源: wxw-123.blog.csdn.net,作者:王小王-123,版权归原作者所有,如需转载,请联系作者。
原文链接:wxw-123.blog.csdn.net/article/details/123743127
- 点赞
- 收藏
- 关注作者
评论(0)