画竖直和水平的分割线
1
2
3
|
plt.vlines(x, ymin, ymax)
plt.hlines(y, xmin, xmax)
|
例:plt.vlines(0, 0, 0.5, colors = "r", linestyles = "dashed")
贯穿 frame 的线
-
纵线从 frame 的 top to bottom: axvline
纵坐标刻度变文字
参考Matplotlib:设置坐标轴范围,刻度,位置,自定义刻度名称,添加数据标签
1
2
3
|
# 把纵坐标-2变为文字“really bad"
plt.yticks([-2, -1.8, -1, 1.22, 3],[r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$'])
|
坐标显示范围
1
2
3
|
#设置坐标轴范围
plt.xlim((-5, 5))
plt.ylim((-2, 2))
|
坐标轴设置
1
2
3
4
5
6
7
8
9
10
11
|
ax = plt.gca()
# 设置上边和右边无边框
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
# 设置x坐标刻度数字或名称的位置
ax.xaxis.set_ticks_position('bottom')
# 设置边框位置
ax.spines['bottom'].set_position(('data', 0))
|
带箭头的x-y坐标系
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import matplotlib.pyplot as plt
import numpy as np
import math
# 引入axisartist工具
import mpl_toolkits.axisartist as axisartist
# 创建画布
# fig = plt.figure(figsize=(8,8))
fig = plt.figure(dpi = 100)
# 使用axisartist.Subplot 方法创建一个绘图区对象 ax
ax = axisartist.Subplot(fig, 111)
# 将绘图区对象添加到画布中
fig.add_axes(ax)
# 设置绘图区原来所有坐标轴隐藏
ax.axis[:].set_visible(False)
# 添加新的坐标轴
ax.axis["x"] = ax.new_floating_axis(0,0) #第一个0代表水平直线,第二个0代表直线经过0点
ax.axis["y"] = ax.new_floating_axis(1,0) #1代表竖直直线,0代表直线经过0点
# 给 x轴,y轴 加上箭头
ax.axis["x"].set_axisline_style("->",size =1.0)#空心箭头
ax.axis["y"].set_axisline_style("-|>",size=1.0)#实心箭头
# 设置刻度显示方向
ax.axis["x"].set_axis_direction("top")
ax.axis["y"].set_axis_direction("right")
# 绘制曲线:
|
两点连线
1
|
plt.plot([0,6],[0,0.5])
|
箭头
1
|
plt.arrow(0,0,6,0.5,head_width=0.1,head_length=0.1,overhang=1,ec="deepskyblue",linestyle=":")
|
用注释画箭头
1
2
3
|
ax=plt.gca()
ax.annotate("隐逝波", xy=(0,0), xytext=(6,0.5),
arrowprops=dict(arrowstyle="<-", color="deepskyblue", linestyle=":") )
|
隐藏坐标轴
1
|
plt.xticks([]), plt.yticks([]) # 隐藏x和y轴
|
坐标轴标签
函数原型及参数
matplotlib.pyplot.xlabel(xlabel, fontdict=None, labelpad=None, *, loc=None, **kwargs)
- xlabel:类型为字符串,即标签的文本。
- labelpad:类型为浮点数,默认值为None,即标签与坐标轴的距离。
- loc:取值范围为{‘left’, ‘center’, ‘right’},默认值为rcParams[“xaxis.labellocation”](‘center’),即标签的位置。
- **kwargs:Text 对象关键字属性,用于控制文本的外观属性,如字体、文本颜色等。