【问题标题】:Set decimal places for pyplot axis tick labels [duplicate]为pyplot轴刻度标签设置小数位[重复]
【发布时间】:2021-08-04 03:20:53
【问题描述】:

我想使用np.arange() 来定义轴刻度标签。但是有几个标签会出现疯狂的小数位(例如,0.850000000000000001 而不是 0.85)。使用np.around() 到小数点后两位也无济于事,因为这些数字具有交替的小数位(0.45、0.5、0.55...)。我怎样才能让它把每个刻度标签写成 2 位小数?另外,我想为这些标签更改fontsize,所以我需要致电ax.set_yticklabels()

x,y = np.arange(0,1,.05), np.arange(0,1,.05)
fig, ax = plt.subplots(1,1)
ax.plot(x,y)
ax.set_yticks(np.arange(0,1,.05))
ax.set_yticklabels(np.arange(0,1,.05))

【问题讨论】:

    标签: python matplotlib axis-labels


    【解决方案1】:

    只需消除 ax.set_yticklabels()。没有它你会得到想要的结果。

    x,y = np.arange(0,1,.05), np.arange(0,1,.05)
    fig, ax = plt.subplots(1,1)
    ax.plot(x,y)
    ax.set_yticks(np.arange(0,1,.05))
    

    您可以更改 yticklabels 的字体大小,如下所示:

    plt.rc('ytick', labelsize=8)
    x,y = np.arange(0,1,.05), np.arange(0,1,.05)
    fig, ax = plt.subplots(1,1)
    ax.plot(x,y)
    ax.set_yticks(np.arange(0,1,.05))
    

    【讨论】:

    • @jklaus - 请参阅我修改后的答案,以回答您关于字体大小的第二个问题。
    猜你喜欢
    • 2021-06-14
    • 2020-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-25
    • 1970-01-01
    • 2012-03-14
    相关资源
    最近更新 更多