總結matplotlib繪圖如何設置坐標軸刻度大小和刻度。
上代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
from
pylab
import
*
from
matplotlib.ticker
import
MultipleLocator, FormatStrFormatter
xmajorLocator
=
MultipleLocator(
20
)
#將x主刻度標簽設置為20的倍數
xmajorFormatter
=
FormatStrFormatter(
'%1.1f'
)
#設置x軸標簽文本的格式
xminorLocator
=
MultipleLocator(
5
)
#將x軸次刻度標簽設置為5的倍數
ymajorLocator
=
MultipleLocator(
0.5
)
#將y軸主刻度標簽設置為0.5的倍數
ymajorFormatter
=
FormatStrFormatter(
'%1.1f'
)
#設置y軸標簽文本的格式
yminorLocator
=
MultipleLocator(
0.1
)
#將此y軸次刻度標簽設置為0.1的倍數
t
=
arange(
0.0
,
100.0
,
1
)
s
=
sin(
0.1
*
pi
*
t)
*
exp(
-
t
*
0.01
)
ax
=
subplot(
111
)
#注意:一般都在ax中設置,不再plot中設置
plot(t,s,
'--b*'
)
#設置主刻度標簽的位置,標簽文本的格式
ax.xaxis.set_major_locator(xmajorLocator)
ax.xaxis.set_major_formatter(xmajorFormatter)
ax.yaxis.set_major_locator(ymajorLocator)
ax.yaxis.set_major_formatter(ymajorFormatter)
#顯示次刻度標簽的位置,沒有標簽文本
ax.xaxis.set_minor_locator(xminorLocator)
ax.yaxis.set_minor_locator(yminorLocator)
ax.xaxis.grid(
True
, which
=
'major'
)
#x坐標軸的網格使用主刻度
ax.yaxis.grid(
True
, which
=
'minor'
)
#y坐標軸的網格使用次刻度
show()
|