x轴上的python/matplotlib盒形图

x轴上的python/matplotlib盒形图,python,matplotlib,boxplot,Python,Matplotlib,Boxplot,我的数据集是一个包含6个数字的列表:[23948.30、23946.20、23961.20、23971.70、23956.30、23987.30] < P>我希望它们处于水平的方框图中,在X轴上,以 23855代码/代码>和 24472 > /代码>为x轴的限制,因此方框图将位于直线的中间。如果不能这样做,至少显示它下面的x轴,并且非常接近方框图 我还希望方框图显示平均数 现在我只能得到水平方框图,我还希望x轴显示整数,而不是“xx+2.394e” 这是我现在的代码: def box_plot(

我的数据集是一个包含6个数字的列表:
[23948.30、23946.20、23961.20、23971.70、23956.30、23987.30]

< P>我希望它们处于水平的方框图中,在X轴上,以<代码> 23855代码/代码>和<代码> 24472 > /代码>为x轴的限制,因此方框图将位于直线的中间。如果不能这样做,至少显示它下面的x轴,并且非常接近方框图

我还希望方框图显示平均数

现在我只能得到水平方框图,我还希望x轴显示整数,而不是“xx+2.394e”

这是我现在的代码:

def box_plot(circ_list, wear_limit):
    print circ_list
    print wear_limit

    fig1 = plt.figure()
    plt.boxplot(circ_list, 0, 'rs', 0)
    plt.show()

我不确定我是否理解了你帖子中的所有内容,但以下是我对你代码的更正:

l = [23948.30, 23946.20, 23961.20, 23971.70, 23956.30, 23987.30]

def box_plot(circ_list):
    fig, ax = plt.subplots()
    plt.boxplot(circ_list, 0, 'rs', 0, showmeans=True)
    plt.ylim((0.75, 1.25))
    ax.set_yticks([])
    labels = ["{}".format(int(i)) for i in ax.get_xticks()]
    ax.set_xticklabels(labels)
    plt.show()

box_plot(l)
结果是:

现在,请详细了解您的请求以及代码如何与之对应:

  • 显示平均值:这是对plt.boxplot函数中的参数
    showmeans=True
    的简单添加
  • 绘制靠近x轴的水平方框图。默认情况下,箱线图是在y=1处绘制的,因此我刚刚使用
    plt.ylim()
    在0.75和1.25之间重新缩放了y轴。如果希望绘制靠近x轴的箱线图(例如,通过将0.75更改为0.9),或者绘制远离箱线图的顶部(例如,通过将1.25更改为1.5),则可以调整这些数字。我还使用
    plt.set_ticks([])
    消除了yticks,使绘图更清晰
  • 以整数形式显示x记号标签。我只需将xtick的每个标签转换为一个整数,然后使用
    ax.set\u xticklabels()
    函数将其重新应用
一定要让我知道它是否符合您所寻找的,并祝您快乐;)