x轴上的python/matplotlib盒形图
我的数据集是一个包含6个数字的列表: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(
[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处绘制的,因此我刚刚使用
在0.75和1.25之间重新缩放了y轴。如果希望绘制靠近x轴的箱线图(例如,通过将0.75更改为0.9),或者绘制远离箱线图的顶部(例如,通过将1.25更改为1.5),则可以调整这些数字。我还使用plt.ylim()
消除了yticks,使绘图更清晰plt.set_ticks([])
- 以整数形式显示x记号标签。我只需将xtick的每个标签转换为一个整数,然后使用
函数将其重新应用ax.set\u xticklabels()