我正在使用matplotlib创建图形,如何删除刻度线,但只保留第一个和最后一个?我想在绘图内部绘制网格时保持其效果。 (仅删除标签,以确保准确无误)
代码
plt.xlabel("Time [sec]")
plt.ylabel("Load [kN]")
plt.figure(figsize=(6,4.4))
plt.xlim([0, 60])
plt.grid(linestyle='dotted')
plt.axis(linestyle="dotted")
plt.tick_params(axis='y',rotation=90)
ax1= plt.subplot()
ax1.spines['right'].set_color('none')
ax1.spines['bottom'].set_color('none')
ax1.spines['left'].set_color('none')
ax1.spines['top'].set_color('none')
ax1.yaxis.set_major_formatter(FormatStrFormatter('%.3f'))
ax1.tick_params(axis='both', which='major', labelsize=6,colors='#696969')
ax1.tick_params(axis='both', which='minor', labelsize=6,colors='#696969')
ax1.xaxis.set_tick_params(length=0,labelbottom=True)
ax1.yaxis.set_tick_params(length=0,labelbottom=True)
plt.plot(x,y,color='#696969',linewidth='0.5')
plt.show()
当前图:
“>
目标:
谢谢。
我正在使用matplotlib创建图形,如何删除刻度线,但仅保留第一个和最后一个?我想在绘图内部绘制网格时保持其效果。 (仅删除...
您可以使用xticks
和yticks
在x和y轴上设置所需的刻度,将要显示的数字(刻度)列表传递给功能。例如:
刻度位置定义了网格的位置。因此,在x方向上,我们每10个就有一个。标签可以设置为空字符串,除了第一个和最后一个。