python中locator_MatPlotLib中LogLocator的参数

在MatPlotLib中,我想绘制一个具有线性x轴和对数y轴的图形。对于x轴,应在4的倍数处有标签,在1的倍数处应有小刻度。我已经能够使用MultipleLocator类来实现这一点。在

但是,我很难对对数y轴做类似的事情。我希望在0.1、0.2、0.3等处有标签,在0.11、0.12、0.13等处有小刻度。我尝试过用LogLocator类来做这个,但我不确定什么是正确的参数。在

以下是我所做的努力:x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

y = [0.32, 0.30, 0.28, 0.26, 0.24, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10]

fig = plt.figure()

ax1 = fig.add_subplot(111)

x_major = MultipleLocator(4)

x_minor = MultipleLocator(1)

ax1.xaxis.set_major_locator(x_major)

ax1.xaxis.set_minor_locator(x_minor)

ax1.set_yscale("log")

y_major = LogLocator(base=10)

y_minor = LogLocator(base=10)

ax1.yaxis.set_major_locator(y_major)

ax1.yaxis.set_minor_locator(y_minor)

ax1.plot(x, y)

plt.show()

这显示了以下绘图:

6FGOE.png

x轴是我想要的,但不是y轴。在y轴上0.1处有一个标签,但在0.2和0.3处没有标签。此外,在0.11、0.12、0.13等处没有滴答声

我尝试了LogLocator构造函数的一些不同值,例如subs、numdecs和{

我应该使用什么参数值?在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值