46 lines
1.4 KiB
Python
46 lines
1.4 KiB
Python
|
"""
|
||
|
generates 'example_false_color_image.png'
|
||
|
"""
|
||
|
import numpy as np
|
||
|
import pyqtgraph as pg
|
||
|
import pyqtgraph.exporters as exp
|
||
|
from pyqtgraph.Qt import QtGui, mkQApp
|
||
|
|
||
|
class MainWindow(pg.GraphicsLayoutWidget):
|
||
|
""" example application main window """
|
||
|
def __init__(self):
|
||
|
super().__init__()
|
||
|
self.resize(420,400)
|
||
|
self.show()
|
||
|
|
||
|
plot = self.addPlot()
|
||
|
# Example: Transformed display of ImageItem
|
||
|
|
||
|
tr = QtGui.QTransform() # prepare ImageItem transformation:
|
||
|
tr.scale(6.0, 3.0) # scale horizontal and vertical axes
|
||
|
tr.translate(-1.5, -1.5) # move 3x3 image to locate center at axis origin
|
||
|
|
||
|
img = pg.ImageItem( image=np.eye(3), levels=(0,1) ) # create example image
|
||
|
img.setTransform(tr) # assign transform
|
||
|
|
||
|
plot.addItem( img ) # add ImageItem to PlotItem
|
||
|
plot.showAxes(True) # frame it with a full set of axes
|
||
|
plot.invertY(True) # vertical axis counts top to bottom
|
||
|
|
||
|
self.timer = pg.QtCore.QTimer( singleShot=True )
|
||
|
self.timer.timeout.connect(self.export)
|
||
|
self.timer.start(100)
|
||
|
|
||
|
def export(self):
|
||
|
print('exporting')
|
||
|
exporter = exp.ImageExporter(self.scene())
|
||
|
exporter.parameters()['width'] = 420
|
||
|
exporter.export('example_imageitem_transform.png')
|
||
|
|
||
|
mkQApp("ImageItem transform example")
|
||
|
main_window = MainWindow()
|
||
|
|
||
|
## Start Qt event loop
|
||
|
if __name__ == '__main__':
|
||
|
pg.exec()
|