线条样式
matplotlib
中一般通过 linestyle
或 ls
参数来设置线条样式,主要包括以下几种:
参数 | 说明 |
---|---|
- 或 solid |
实线 |
-- 或 dashed |
虚线 |
-. 或 dashdot |
点划线 |
: 或 dotted |
点线 |
None 或 ‘ ’ 或 ‘’ |
不绘制线条 |
标记样式
matplotlib
中一般通过 marker
参数来设置标记样式,主要包括以下几种:
参数 | 说明 |
---|---|
o |
圆圈 |
. |
点 |
d 和 D |
菱形 |
s |
正方形 |
h 和 H |
六边形 |
* |
星号 |
_ |
水平线 |
^ v < > |
上下左右三角形 |
8 |
八边形 |
p |
五边形 |
, |
像素 |
+ |
加号 |
\ |
竖线 |
x |
叉号 |
颜色
matplotlib
中一般通过 color
或 c
参数来设置标记样式,主要包括以下几种:
参数 | 说明 |
---|---|
blue b |
蓝色 |
green g |
绿色 |
red r |
红色 |
yellow y |
黄色 |
cyan-blue c |
青色 |
black k |
黑色 |
magenta m |
洋红色 |
white w |
白色 |
如果以上的颜色不够用,需要自定义颜色,可以使用下面两种方法:
- 使用 HTML 十六进制颜色字符串,例如
#0F0F0F
- 使用一个三元归一化的元组,例如
(0.3, 0.4, 0.5)
填充样式
import matplotlib.pyplot as plt
from matplotlib.patches import Rectangle
matplotlib
中一般通过 hatch
参数来设置条形图的填充样式。以下是一些简单的填充样式:
fig, axs = plt.subplots(2, 5, constrained_layout=True, figsize=(6.4, 3.2))
hatches = ['/', '\\', '|', '-', '+', 'x', 'o', 'O', '.', '*']
def hatches_plot(ax, h):
ax.add_patch(Rectangle((0, 0), 2, 2, fill=False, hatch=h))
ax.text(1, -0.5, f"' {h} '", size=15, ha="center")
ax.axis('equal')
ax.axis('off')
for ax, h in zip(axs.flat, hatches):
hatches_plot(ax, h)
如果将参数值重复一遍,则会得到更密集的效果:
fig, axs = plt.subplots(2, 5, constrained_layout=True, figsize=(6.4, 3.2))
hatches = ['//', '\\\\', '||', '--', '++', 'xx', 'oo', 'OO', '..', '**']
for ax, h in zip(axs.flat, hatches):
hatches_plot(ax, h)
参数字符串也可以混合使用:
fig, axs = plt.subplots(2, 5, constrained_layout=True, figsize=(6.4, 3.2))
hatches = ['/o', '\|', '|*', '-\\', '+o', 'x*', 'o-', 'O|', 'O.', '*-']
for ax, h in zip(axs.flat, hatches):
hatches_plot(ax, h)