2017-04-01 3 views
1

현재 python2.7 코드의 플롯을 수정하려고합니다. 이 플롯은 복사의 TRANSFERT 코드 (내가 수정할 수있는)에서 와서 출력하는 방법과 클래스 타입 : here비 유형 객체에 colorbar 사용

그래서, 내가 넣어 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() 그 직후, 각각의 메서드를 호출하고 플롯의 제목을 변경하면 플롯이 예상대로 저장됩니다!

인수로 인해 로그 스케일의 년 Colorbar에게

  • 추적 표면을 추가

    그러나, 나는 그것을 할 수있는 방법을 찾지 못한 두 가지가있다 메소드에서 그것을 수행 할 수 있습니다.
    plt.colorbar(fig)fig=res.plot_image(...) (방사능 전송 코드의 출력을 사용)과 같은 것을 시도하면 오류가 무화과는 표시가 가능한 객체가 아닙니다 (논리처럼 보임).

    나를 도울 수있는 아이디어가 있습니까? 너에게 충분한 정보를줬으면 좋겠어. 내 영어

    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(...) 만약 죄송

    는 하나 개의 축에 하나 개의 이미지을 나타내는하는 년 Colorbar을받을 수있는 해결책은 아주 쉽게 할 수 있습니다.

    import numpy as np 
    import matplotlib.pyplot as plt 
    
    #.... some code 
    
    res.plot_image(...) 
    
    im, = plt.gca().get_images() 
    
    plt.colorbar(im) 
    
    plt.show()