X轴上的Matplotlib boxplot间距

时间:2014-11-13 16:53:00

标签: python matplotlib axes

我是python和matplotlib的初学者。我有制作箱图的代码。该代码适用于小型数据集,其中没有太多的箱图可供绘制。当我向上扩展到更多绘图时,x轴上的间距成为问题,并且框,更重要的是x轴标签,太靠近在一起。我非常想解决这个问题,我确信这是一个简单的解决方案,我只是一个菜鸟。

这是我的代码

    %matplotlib inline    
    plt.boxplot(data_sgc)
    plt.ylabel("Alignment Gap Score")
    plt.xlabel("Locus")
    plt.xticks(range(1,len(alignments.keys())+1), [i[1] for i in medians_sgc], rotation=90)
    remove_border()

我真的无法向你展示我得到的形象,因为我需要10个代表或类似的东西。无论如何,我希望我需要做一些像set fig = plt ....等等,然后做下游的事情。

如果您有足够的回复,请记住我是一个完全的菜鸟,并且非常感谢您给我的任何解释性信息!

这是数据的链接。顺序是data_sgc,然后是medians_sgc,然后是对齐https://paste.ee/p/ay8zQ。所有这些都只是打印 - dat_sgc不完整,你会看到,但我希望这给你上下文来理解问题。

我需要的只是代码,它允许我增加x轴上的图之间的间距。这是我得到的当前输出的链接https://maxjohnlunt12.files.wordpress.com/2014/11/download-2.png尽管这个截图是在我添加参数之前拍摄的,以旋转xlabels

1 个答案:

答案 0 :(得分:1)

好的,我已经对它进行了分类。增加了范围函数中的增量值,减少了xticks字体大小。

plt.boxplot(data_sgc, positions = range(4,(len(alignments.keys())*4), 4))
plt.ylabel("Alignment Gap Score")
plt.xlabel("Locus")
plt.xticks(range(4,((len(alignments.keys())+1)*4),4), [i[1] for i in medians_sgc], rotation=90, fontsize = 4)
plt.tick_params(axis='x', pad=4) 
plt.tight_layout()
remove_border()