7

私はかなり大きなグラフを作成していますが、境界線の空白は、データでより適切に使用される多くのピクセルを占めています。グラフが大きくなるにつれて境界線が大きくなるようです。

これが私のグラフ作成コードの本質です。

        import matplotlib
        from pylab import figure

        fig = figure()
        ax = fig.add_subplot(111)
        ax.plot_date((dates, dates), (highs, lows), '-', color='black')
        ax.plot_date(dates, closes, '-', marker='_', color='black')

        ax.set_title('Title')
        ax.grid(True)
        fig.set_figheight(96)
        fig.set_figwidth(24)

境界線のサイズを小さくする方法はありますか?たぶん、境界線を2インチ程度に一定に保つことができるような設定ですか?

4

2 に答える 2

6

単一のサブプロットを使用しているように見えるので、スキップadd_subplotして直接add_axes. これにより、軸のサイズを (Figure 相対座標で) 指定できるため、Figure 内で必要なだけ大きくすることができます。あなたの場合、これはあなたのコードが次のようになることを意味します

    import matplotlib.pyplot as plt

    fig = plt.figure()

    # add_axes takes [left, bottom, width, height]
    border_width = 0.05
    ax_size = [0+border_width, 0+border_width, 
               1-2*border_width, 1-2*border-width]
    ax = fig.add_axes(ax_size)
    ax.plot_date((dates, dates), (highs, lows), '-', color='black')
    ax.plot_date(dates, closes, '-', marker='_', color='black')

    ax.set_title('Title')
    ax.grid(True)
    fig.set_figheight(96)
    fig.set_figwidth(24)

set_figheight必要に応じて、パラメータを/set_figwidthに直接figure()呼び出しに入れることもできます。

于 2009-07-30T16:23:51.007 に答える
5

subplots_adjustAPIを試してください:

subplots_adjust(* args、** kwargs)

fig.subplots_adjust(left = None、bottom = None、right = None、wspace = None、hspace = None)

SubplotParamsをkwargs(デフォルトはrc、None)で更新し、サブプロットの場所を更新します

于 2009-07-30T06:45:10.777 に答える