基于Matplotlib模块的绘图
• Matplotlib是Python最著名的绘图库之一,提供了一整套和MATLAB相似的命令API,既适合交互式地进行制图,也可以作为绘图控件方便地嵌入GUI应用程序中
• Matplotlib的pyplot子库提供了和MATLAB类似的绘图API,方便用户快速绘制2D图表,包括直方图、饼图、散点图等
• Matplotlib配合NumPy等模块使用,可以实现科学计算结果的可视化显示
特点:
- 使用简单绘图语句,实现复杂绘图效果;
- 以交互式操作实现渐趋精细的图形效果;
- 使用嵌入式的Latex输出具有印刷级别的图表、科学表达式和符号文本;
- 对图表的组成元素实现精细化控制
matplotlib绘图
首先,做好准备工作
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
plt.rcParams['font.sans-serif']=['SimHei'] # 用来显示正常的中文标签
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号
x = np.linspace(0.05,10,1000)
y = np.sin(x)
plt.plot(x,y)
plt.show()
plt.plot()
Colors
character | color |
---|---|
‘b’ | blue |
‘g’ | green |
‘r’ | red |
‘c’ | cyan |
‘m’ | magenta |
‘y’ | yellow |
‘k’ | black |
‘w’ | white |
Markers
字符 | 类型 | 字符 | 类型 |
---|---|---|---|
‘·’ | 点 | ‘-’ | 实线 |
‘,’ | 像素点 | ‘–’ | 虚线 |
‘o’ | 圆点 | ‘^’ | 上三角点 |
‘v’ | 下三角点 | ‘<’ | 左三角点 |
‘>’ | 右三角点 | ‘1’ | 下三叉点 |
'2 ’ | 上三叉点 | ‘3’ | 左三叉点 |
’ 4’ | 右三叉点 | ‘s’ | 正方点 |
‘p’ | 五角点 | ‘H’ | 乘号点 |
‘+’ | 加号点 | ‘x’ | 乘号点 |
‘D’ | 实心菱形点 | ‘d’ | 瘦菱形点 |
Line Styles
character | description |
---|---|
‘-’ | solid line style |
‘–’ | dashed line style |
‘-.’ | dash-dot line style |
‘:’ | dotted line style |
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
x=np.linspace(1,10,10)
y = x**2
plt.plot(x,y,color='#ff3456',marker='*',linestyle='--')
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
x=np.linspace(1,10,10)
y = np.cos(x)
plt.plot(x,y,'b*')
plt.plot()其他常用参数
- linewidth #定义线条的宽度,可取任意实数
- alpha #定义线条的透明度,一般取值[0,1]之间
- drawstyle #定义描点方式
drawstyle : {‘default’, ‘steps’, ‘steps-pre’, ‘steps-mid’, 'steps-post}
使用‘steps’的描点方式绘图
x=np.linspace(0,10,10)
y=np.cos(x)
plt.plot(x,y,'b*-',drawstyle