>source

Plotly 오프라인을 사용하여 파이썬에서 그래프를 생성하고 있습니다.

아래 문서에 따르면,

https://plot.ly/python/offline/

C:/tmp/test_plot.html 파일을 완벽하게 생성하는 code입니다.

import plotly.offline as offline
offline.init_notebook_mode()
offline.plot({'data': [{'y': [4, 2, 3, 4]}],
               'layout': {'title': 'Test Plot',
                          'font': dict(family='Comic Sans MS', size=16)}},
             auto_open=False, filename='C:/tmp/test_plot')

이 그래프를 html 대신 png로 저장하려면 어떻게 해야 합니까?

  • 답변 # 1

    import plotly
    from html2image import Html2Image
    import os
    if not os.path.exists("./tmp"):
        os.mkdir("./tmp")
    fig= dict(data= your_data, layout=your_layout)
    plotly.offline.plot(fig, filename='./tmp/look.html')
    hti= Html2Image()
    hti.output_path= './tmp/'
    with open('tmp/look.html') as f:
        hti.screenshot(f.read(), save_as='ooo.png')
    

  • 답변 # 2

    빠른 업데이트: 이제 plotly.py 3.2.0부터 완전히 오프라인 상태에서 프로그래밍 방식으로 그림을 정적 이미지로 내보낼 수 있습니다.

    이는 통합을 통해 달성되었습니다. 범고래plotly.py에 프로젝트. 자세한 내용은 확인하십시오.

    이와 관련되어 있지만 오프라인에는 해당되지 않습니다... Jupyter를 사용 중이고 MyBinder.org와 같은 바인더 세션을 통해 이 경로를 정적 이미지에 통합하는 프로세스를 공유하려는 경우 여기를 참조하십시오.

    Wayne2022-02-14 14:00:16

    이 "개선"을 위해서는 psutils가 설치되고 orca도 설치되어야 합니다.

    Tim Seed2022-02-14 17:50:40
  • 답변 # 3

    PhantomJS를 자동화하여 브라우저를 열어 다운로드할 때 원본 이미지와 정확히 동일한 너비와 높이로 스크린샷을 저장할 수 있습니다.

    code는 다음과 같습니다.

    import plotly.offline as offline
    from selenium import webdriver
    offline.plot({'data': [{'y': [4, 2, 3, 4]}],
                   'layout': {'title': 'Test Plot',
                              'font': dict(size=12)}},
                 image='svg', auto_open=False, image_width=1000, image_height=500)
    driver= webdriver.PhantomJS(executable_path="phantomjs.exe")
    driver.set_window_size(1000, 500)
    driver.get('temp-plot.html')
    driver.save_screenshot('my_plot.png')
    #Use this, if you want a to embed this .png in a HTML file
    #bs_img= driver.get_screenshot_as_base64()
    

  • 답변 # 4

    offline.plot방법은이미지='png그리고image_filename='이미지_파일_이름'파일을 저장하는 속성png.

    offline.plot({'data': [{'y': [4, 2, 3, 4]}],
                  'layout': {'title': 'Test Plot',
                             'font': dict(family='Comic Sans MS', size=16)}},
                 auto_open=True, image= 'png', image_filename='plot_image',
                 output_type='file', image_width=800, image_height=600,
                 filename='temp-plot.html', validate=False)
    

    자세한 내용은 내부 보기오프라인.py또는 온라인에서음모를 꾸미다.

    그러나 한 가지 주의할 점은 출력 이미지가 HTML에 연결되어 있기 때문에 브라우저에서 열리고 이미지 파일을 저장할 수 있는 권한을 요청한다는 것입니다. 브라우저 설정에서 끌 수 있습니다.

    또는, 다음을 사용하여 matplotlib에서 플롯으로 변환을 볼 수 있습니다.plot_mpl.
    다음 예제는오프라인.py

    from plotly.offline import init_notebook_mode, plot_mpl
        import matplotlib.pyplot as plt
        init_notebook_mode()
        fig= plt.figure()
        x= [10, 15, 20, 25, 30]
        y= [100, 250, 200, 150, 300]
        plt.plot(x, y, "o")
        plot_mpl(fig)
        # If you want to to download an image of the figure as well
        plot_mpl(fig, image='png')
    

    이미지를 인수에 넣는 동안 오류가 발생합니다. plot_mpl()에 예기치 않은 키워드 인수 'image'가 있습니다. /plot()에 예기치 않은 키워드 인수 'image'가 있습니다. 버전 1.9.6에서 실행 중입니다.

    Dave D.2022-02-14 03:55:28

    플롯 버전 1.12.9로 업데이트했는데 예상대로 작동합니다. html에 액세스하지 않고 직접 png 저장을 구성하는 방법이 있습니까?

    Dave D.2022-02-14 03:55:28

    나는 당신이 업그레이드를 원할지도 모른다고 언급하려고 했지만 이미 당신은 :-). 지금까지의 연구에 따르면 그렇게 생각하지 않고 음모 포럼도 확인했습니다. 거기에 물어볼 수도 있습니다. 가장 좋은 방법은 플롯을 matplotlib로 리디렉션하고 저장하는 것입니다. 또는 온라인 방법을 사용하십시오. 여기를 참조하십시오 :plot.ly/python/static-image-export

    Anil_M2022-02-14 03:55:28

    이미지의 다운로드 위치를 선택하는 방법이 있습니까? 광산은 다운로드 및 변경 사항으로만 이동합니다.

    Newb 4 You BB2022-02-14 14:14:40

    이것은 matplotlib를 플롯으로 변환하고 그 반대로는 변환하지 않습니다.

    George2022-02-14 16:24:16
  • 이전 dotnetnuke : Microdata와 함께 사용할 Absolute DNN 포털 로고 URL 경로를 얻는 방법은 무엇입니까?
  • 다음 reactjs : Firestore(React.js)의 컬렉션 내에서 문서 배열 가져오기