2017-04-01 9 views
1

私は現在、python2.7コードでプロットを修正しようとしています。このプロットは、放射の送迎コード(私は変更することはできませんどのような)から来て、出力がメソッドを持つクラス型である:here非タイプオブジェクトにカラーバーを使用

だから、私は入れplt.title()場合や

plot_image(wavelength0, overplot=False, inclination=None, cmap=None, 
      ax=None, axes_units='AU', polarization=False, polfrac=False, 
      psf_fwhm=None, vmin=None, vmax=None, dynamic_range=1000000.0) 

以上の情報plt.savefig()の直後に、私はそれぞれのメソッドを呼び出し、プロットのタイトルが変わり、プロットが期待通りに保存されます!

引数なしであるため、対数スケールでカラーバーに

  • トレース面を追加します。

    しかし、私はそれを行うための方法を見つけることができませんでした二つのものがありますそれを行う方法で許可します。
    plt.colorbar(fig)のようなものをfig=res.plot_image(...)としてみると(放射転写コードの出力で)、figは描画可能なオブジェクトではありません(ロジックと思われます)。

    私を助けるアイデアはありますか?私はあなたに十分な情報をくれたことを願っている。

    私の英語

    Lo_du

  • +0

    'plot_image'の戻り値の型は何ですか? 'unknown = res.plot_image(...)' 'print type(unknown)'の結果は? – ImportanceOfBeingErnest

    +0

    [その 'plot_image'関数からのコード](https://github.com/cpinte/mcfost-python/blob/master/mcfost/plotting.py)はかなり単純です。それを自分のニーズに適応させる。 – ImportanceOfBeingErnest

    答えて

    0

    のため申し訳ありませんがres.plot_image(...)が一つだけの軸に一つの画像をプロットした場合は、カラーバーを得るための解決策はとても簡単かもしれません。

    import numpy as np 
    import matplotlib.pyplot as plt 
    
    #.... some code 
    
    res.plot_image(...) 
    
    im, = plt.gca().get_images() 
    
    plt.colorbar(im) 
    
    plt.show() 
    
    関連する問題