美文网首页
matplotlib绘制柱状图时,控制间距

matplotlib绘制柱状图时,控制间距

作者: _xuyue | 来源:发表于2019-11-07 23:46 被阅读0次

    问题描述:

    绘制柱状图时,如果横轴刻度名过程,文字之间容易发生重叠,如图所示:

    image.png
    代码:
    plt.bar(left=range(10), height=list(imgNum_per_type.values()) ,width=1)
    plt.xlabel("颜色", fontproperties=font)
    plt.ylabel('图片数目', fontproperties=font)
    # plt.xticks(list(range(0, 18, 2)), list(dict_color.values()))
    plt.xticks(range(10), ['小型车', '轿车','SUV','厢式货车','掀背车','MPV','小卡车','公交车','卡车','旅行车'], fontproperties=font)
    plt.show()
    

    尝试方法1:

    网上博客的常用方法,修改bar的第一个参数,将每个柱子横坐标的值扩大二倍。
    结果:没有变化,可能是受限于图表的大小,需要通过修改matplotlib的参数来解决


    image.png
    代码:
    plt.bar(left=list(range(0,20, 2)), height=list(imgNum_per_type.values()) ,width=1)
    plt.xlabel("颜色", fontproperties=font)
    plt.ylabel('图片数目', fontproperties=font)
    # plt.xticks(list(range(0, 18, 2)), list(dict_color.values()))
    plt.xticks(list(range(0, 20, 2)), ['小型车', '轿车','SUV','厢式货车','掀背车','MPV','小卡车','公交车','卡车','旅行车'], fontproperties=font)
    plt.show()
    

    最终方案:

    修改matplotlib的参数,增大图表大小,结果如图所示:


    image.png
    代码:
    params = {
        'figure.figsize': '8, 4'
    }
    plt.rcParams.update(params)
    

    相关文章

      网友评论

          本文标题:matplotlib绘制柱状图时,控制间距

          本文链接:https://www.haomeiwen.com/subject/unbbbctx.html