https://matplotlib.org/api/pyplot_summary.html
在交互环境中查看帮助文档:
-
import matplotlib.pyplot
as plt
-
help(plt.plot)
以下是对帮助文档重要部分的翻译:
plot函数的一般的调用形式:
-
#单条线:
-
plot([x], y, [fmt], data=
None, **kwargs)
-
#多条线一起画
-
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
可选参数[fmt] 是一个字符串来定义图的基本属性如:颜色(color),点型(marker),线型(linestyle),
具体形式 fmt = '[color][marker][line]'
fmt接收的是每个属性的单个字母缩写,例如:
plot(x, y, 'bo-') # 蓝色圆点实线
若属性用的是全名则不能用*fmt*参数来组合赋值,应该用关键字参数对单个属性赋值如:
plot(x,y2,color='green', marker='o', linestyle='dashed', linewidth=1, markersize=6)
plot(x,y3,color='#900302',marker='+',linestyle='-')
常见的颜色参数:**Colors**
也可以对关键字参数color赋十六进制的RGB字符串如 color='#900302'
============= =============================== character color ============= =============================== ``'b'`` blue 蓝 ``'g'`` green 绿 ``'r'`` red 红 ``'c'`` cyan 蓝绿 ``'m'`` magenta 洋红 ``'y'`` yellow 黄 ``'k'`` black 黑 ``'w'`` white 白 ============= ===============================
点型参数**Markers**,如:marker='+' 这个只有简写,英文描述不被识别
-
============= ===============================
-
character description
-
============= ===============================
-
``'.'`` point marker
-
``','`` pixel marker
-
``'o'`` circle marker
-
``'v'`` triangle_down marker
-
``'^'`` triangle_up marker
-
``'
<'`` triangle_left marker
-
``'>'`` triangle_right marker
-
``'1'`` tri_down marker
-
``'2'`` tri_up marker
-
``'3'`` tri_left marker
-
``'4'`` tri_right marker
-
``'s'`` square marker
-
``'p'`` pentagon marker
-
``'*'`` star marker
-
``'h'`` hexagon1 marker
-
``'H'`` hexagon2 marker
-
``'+'`` plus marker
-
``'x'`` x marker
-
``'D'`` diamond marker
-
``'d'`` thin_diamond marker
-
``'|'`` vline marker
-
``'_'`` hline marker
-
============= ===============================
线型参数**Line Styles**,
linestyle='-'
============= =============================== character description ============= =============================== ``'-'`` solid line style 实线 ``'--'`` dashed line style 虚线 ``'-.'`` dash-dot line style 点画线 ``':'`` dotted line style 点线 ============= ===============================
样例1
-
import matplotlib.pyplot
as plt
-
import numpy
as np
-
'''read file
-
fin=open("para.txt")
-
a=[]
-
for i in fin:
-
a.append(float(i.strip()))
-
a=np.array(a)
-
a=a.reshape(9,3)
-
'''
-
a=np.random.random((
9,
3))*
2
#随机生成y
-
-
y1=a[
0:,
0]
-
y2=a[
0:,
1]
-
y3=a[
0:,
2]
-
-
x=np.arange(
1,
10)
-
-
ax = plt.subplot(
111)
-
width=
10
-
hight=
3
-
ax.arrow(
0,
0,
0,hight,width=
0.01,head_width=
0.1, head_length=
0.3,length_includes_head=
True,fc=
'k',ec=
'k')
-
ax.arrow(
0,
0,width,
0,width=
0.01,head_width=
0.1, head_length=
0.3,length_includes_head=
True,fc=
'k',ec=
'k')
-
-
ax.axes.set_xlim(
-0.5,width+
0.2)
-
ax.axes.set_ylim(
-0.5,hight+
0.2)
-
ax.plot(x,y1,
'bD-',data=[
'lwww'])
-
ax.plot(x,y2,
'r^-')
-
ax.plot(x,y3,color=
'#900302',marker=
'*',linestyle=
'-')
-
plt.show()
样例2,
-
import matplotlib.pyplot
as plt
-
import numpy
as np
-
-
x = np.arange(
0,
2*np.pi,
0.02)
-
y = np.sin(x)
-
y1 = np.sin(
2*x)
-
y2 = np.sin(
3*x)
-
ym1 = np.ma.masked_where(y1 >
0.5, y1)
-
ym2 = np.ma.masked_where(y2 <
-0.5, y2)
-
-
lines = plt.plot(x, y, x, ym1, x, ym2,
'o')
-
#设置线的属性
-
plt.setp(lines[
0], linewidth=
1)
-
plt.setp(lines[
1], linewidth=
2)
-
plt.setp(lines[
2], linestyle=
'-',marker=
'^',markersize=
4)
-
#线的标签
-
plt.legend((
'No mask',
'Masked if > 0.5',
'Masked if < -0.5'), loc=
'upper right')
-
plt.title(
'Masked line demo')
-
plt.show()