Matplotlib 绘图标记

绘图过程如果我们想要给坐标自定义一些不一样的标记,就可以使用 plot() 方法的 marker 参数来定义。

以下实例定义了实心圆标记:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 1 , 3 , 4 , 5 , 8 , 9 , 6 , 1 , 3 , 4 , 5 , 2 , 4 ] )

plt. plot ( ypoints , marker = 'o' )
plt. show ( )

显示结果如下:

marker 可以定义的符号如下:

标记 符号 描述
"." m00
"," m01 像素点
"o" m02 实心圆
"v" m03 下三角
"^" m04 上三角
"<" m05 左三角
">" m06 右三角
"1" m07 下三叉
"2" m08 上三叉
"3" m09 左三叉
"4" m10 右三叉
"8" m11 八角形
"s" m12 正方形
"p" m13 五边形
"P" m23 加号(填充)
"*" m14 星号
"h" m15 六边形 1
"H" m16 六边形 2
"+" m17 加号
"x" m18 乘号 x
"X" m24 乘号 x (填充)
"D" m19 菱形
"d" m20 瘦菱形
"|" m21 竖线
"_" m22 横线
0 (TICKLEFT) m25 左横线
1 (TICKRIGHT) m26 右横线
2 (TICKUP) m27 上竖线
3 (TICKDOWN) m28 下竖线
4 (CARETLEFT) m29 左箭头
5 (CARETRIGHT) m30 右箭头
6 (CARETUP) m31 上箭头
7 (CARETDOWN) m32 下箭头
8 (CARETLEFTBASE) m33 左箭头 (中间点为基准)
9 (CARETRIGHTBASE) m34 右箭头 (中间点为基准)
10 (CARETUPBASE) m35 上箭头 (中间点为基准)
11 (CARETDOWNBASE) m36 下箭头 (中间点为基准)
"None", " " or ""   没有任何标记
'$...$' m37 渲染指定的字符。例如 "$f$" 以字母 f 为标记。

以下实例定义了 * 标记:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 1 , 3 , 4 , 5 , 8 , 9 , 6 , 1 , 3 , 4 , 5 , 2 , 4 ] )

plt. plot ( ypoints , marker = '*' )
plt. show ( )

显示结果如下:

以下实例定义了下箭头:

实例

import matplotlib. pyplot as plt
import matplotlib. markers

plt. plot ( [ 1 , 2 , 3 ] , marker = matplotlib. markers . CARETDOWNBASE )
plt. show ( )

显示结果如下:

fmt 参数

fmt 参数定义了基本格式,如标记、线条样式和颜色。

									fmt = '[marker][line][color]'
								

例如 o:r o 表示实心圆标记, : 表示虚线, r 表示颜色为红色。

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 6 , 2 , 13 , 10 ] )

plt. plot ( ypoints , 'o:r' )
plt. show ( )

显示结果如下:

线类型:

线类型标记 描述
'-' 实线
':' 虚线
'--' 破折线
'-.' 点划线

颜色类型:

颜色标记 描述
'r' 红色
'g' 绿色
'b' 蓝色
'c' 青色
'm' 品红
'y' 黄色
'k' 黑色
'w' 白色

标记大小与颜色

我们可以自定义标记的大小与颜色,使用的参数分别是:
  • markersize,简写为 ms :定义标记的大小。
  • markerfacecolor,简写为 mfc :定义标记内部的颜色。
  • markeredgecolor,简写为 mec :定义标记边框的颜色。

设置标记大小:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 6 , 2 , 13 , 10 ] )

plt. plot ( ypoints , marker = 'o' , ms = 20 )
plt. show ( )

显示结果如下:

设置标记外边框颜色:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 6 , 2 , 13 , 10 ] )

plt. plot ( ypoints , marker = 'o' , ms = 20 , mec = 'r' )
plt. show ( )

显示结果如下:

设置标记内部颜色:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 6 , 2 , 13 , 10 ] )

plt. plot ( ypoints , marker = 'o' , ms = 20 , mfc = 'r' )
plt. show ( )

显示结果如下:

自定义标记内部与边框的颜色:

实例

import matplotlib. pyplot as plt
import numpy as np

ypoints = np. array ( [ 6 , 2 , 13 , 10 ] )
plt. plot ( ypoints , marker = 'o' , ms = 20 , mec = '#4CAF50' , mfc = '#4CAF50' )
plt. show ( )

显示结果如下: