Python 按图修改历史组图中的单个图形

Python 按图修改历史组图中的单个图形,python,pandas,matplotlib,Python,Pandas,Matplotlib,我在iPython笔记本上绘制了一组国家频率,使用: df['country'].hist(by=df['frequency'], bins=yr_bins) 但结果的图形格式不正确; 我希望/希望能够定义的事情: y轴日志与否 单个图的大小调整 x轴极限 自动布局 每个图形之间的间距,以便标签不会重叠 到目前为止,我已经意识到: 调用.hist将输出一个9x9 2d数组,其中包含matplotlib.axes.\u subPlot.AxesSubplot对象 所有这些axessubp

我在iPython笔记本上绘制了一组国家频率,使用:

df['country'].hist(by=df['frequency'], bins=yr_bins)
但结果的图形格式不正确;

我希望/希望能够定义的事情:

  • y轴日志与否
  • 单个图的大小调整
  • x轴极限
  • 自动布局
  • 每个图形之间的间距,以便标签不会重叠
到目前为止,我已经意识到:

  • 调用
    .hist
    将输出一个9x9 2d数组,其中包含
    matplotlib.axes.\u subPlot.AxesSubplot
    对象
  • 所有这些
    axessubplot
    s都嵌入到一个图形中

迄今为止的最佳工作情况:

  • 是否用于日志:仅使用关键字
    log=True
  • 单个图形的大小调整和自动布局:

    • 确定组数:
      n=len(df.groupby('country')
    • 然后使用关键字组合
      layout=(行、列)
      figsize(宽、高)
      • 硬编码到
        c
        的列数,以及每个图形的所需宽度
        w
        和高度
        h
      • 然后使用
        layout((n/c),c)
        figsize=((c*w),((n/c)*h))
  • 设置x轴限制:通过
    axes=df…
    获取轴阵列,然后应用
    set\u xlim(lim)
  • 道岔的间距,但如果需要,则应:

       for row in axes:
           for ax in row:
               ax.set_xlim(lim)
    plt.subplots_adjust(wspace=0.5, hspace=1)