1. 程式人生 > 程式設計 >python pyqtgraph 儲存圖片到本地的例項

python pyqtgraph 儲存圖片到本地的例項

pyqtgraph官方給的示例居然會報錯2333

官方文件傳送門:#####pyqtgraph export

python pyqtgraph 儲存圖片到本地的例項

pyqtgraph支援在視覺化視窗中右鍵儲存(Exporting from the GUI)試了一下只能儲存為svg格式,

儲存為png會閃退不知道是我這裡的原因還是這裡有bug,我希望直接生成圖片(Exporting from the API)

先檢視本地site-packages裡面有test檔案,裡面有生成svg的版本畫出來的圖是svg格式只能放在瀏覽器看不能改字尾名

而我希望生成png之類的圖片

折騰了一下終於弄了一個能跑的出來:

from __future__ import division,print_function,absolute_import
import pyqtgraph as pg
import pyqtgraph.exporters
import numpy as np

def test_plotscene():
  pg.setConfigOption('foreground',(255,255,255))
  w = pg.GraphicsWindow()
  p = w.addPlot()
  p.plot(np.linspace(0.0,20.0,20),pen={'color':'w'})
  p.setXRange(0,20)
  p.setYRange(-10,20)
  app = pg.mkQApp()
  app.processEvents()
  ex = pyqtgraph.exporters.ImageExporter(w.scene())
  ex.export(fileName="test.png")

if __name__ == "__main__":
  test_plotscene()

python pyqtgraph 儲存圖片到本地的例項

補充知識:pyqtgraph.GraphicsObject結構及用法

pyqtgraph.GraphicsObject官方文件 原始檔

class pyqtgraph.GraphicsItem(register=True)

可以為GraphicsObject and GraphicsWidget提供有用方法的抽象類(Abstract Class)

Abstract Class

抽象類:不能例項化的類。

在面向物件的概念中,我們知道所有的物件都是通過類來描繪的,但是反過來卻不是這樣。並不是所有的類都是用來描繪物件的,如果一個類中沒有包含足夠的資訊來描繪一個具體的物件,這樣的類就是抽象類。

抽象類往往用來表徵我們在對問題領域進行分析、設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象。

比如:如果我們進行一個圖形編輯軟體的開發,就會發現問題領域存在著圓、三角形這樣一些具體概念,它們是不同的,但是它們又都屬於形狀這樣一個概念,形狀這個概念在問題領域是不存在的,它就是一個抽象概念。

正是因為抽象的概念在問題領域沒有對應的具體概念,所以用以表徵抽象概念的抽象類是不能夠例項化的。

以上這篇python pyqtgraph 儲存圖片到本地的例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。