我正在一个半开花的情节中绘制一些值。我需要使用
ax.set_yscale('log')
而不是
ax.semilogy(...
因为我有一些负数值的数组(所以我可以将比例设置为symlog)。
我的代码
ax = plt.subplot(132)
ax.set_yscale('log')
ax.plot(np.arange(0,4),array,'-o')
ax.errorbar(np.arange(0,4),array,yerr=[yerr_neg,yerr_pos])
ax.set_yticks(np.exp(np.arange(-0.4,0.5,0.1)))
ax.set_yticklabels(np.arange(-0.4,0.5,0.1))
然而,自动放置的刻度和标签仍然存在:
如何正确摆脱原始的刻度/标签?通过消除任一绘图线(意味着删除ax.plot线或ax.errorbar线),我仍然得到相同的错误
答案 0 :(得分:0)
显示的标签是次要的标签。您可以将次要刻度设置为空列表以消除它们。
ax.set_yticks([], minor=True)
或者只是设置次要刻度,
ax.minorticks_off()