def _showOneColorslice(self, param=None): """ It shows a single colored slice of the 3DFSC """ imageFile = self.protocol._getExtraPath(OUTPUT_3DFSC) img = ImageHandler().read(imageFile) imgData = img.getData() xplotter = XmippPlotter(x=1, y=1, mainTitle="3DFSC Slices " "along %s-axis." % self._getAxis()) sliceNumber = self.sliceNumber.get() if sliceNumber < 0: x, _, _, _ = ImageHandler().getDimensions(imageFile) sliceNumber = int(x / 2) else: sliceNumber -= 1 # sliceNumber has no sense to start in zero a = xplotter.createSubPlot("Slice %s" % (sliceNumber + 1), '', '') matrix = self.getSliceImage(imgData, sliceNumber, self._getAxis()) plot = xplotter.plotMatrix(a, matrix, 0, 1, cmap=self.getColorMap(), interpolation="nearest") xplotter.getColorBar(plot) return [plt.show(xplotter)]
def _show3DFSCcolorSlices(self, param=None): """ It opens 4 colores slices of the 3DFSC """ errors = [] if self.protocol.estimate3DFSC: img = ImageHandler().read( self.protocol._getExtraPath(OUTPUT_3DFSC)) imgData = img.getData() xplotter = XmippPlotter(x=2, y=2, mainTitle="3DFSC Color Slices" "along %s-axis." % self._getAxis()) # The slices to be shown are close to the center. Volume size is divided in # 9 segments, the fouth central ones are selected i.e. 3,4,5,6 for i in range(3, 7): sliceNumber = self.getSlice(i, imgData) a = xplotter.createSubPlot("Slice %s" % (sliceNumber + 1), '', '') matrix = self.getSliceImage(imgData, sliceNumber, self._getAxis()) plot = xplotter.plotMatrix(a, matrix, 0, 1, cmap=self.getColorMap(), interpolation="nearest") xplotter.getColorBar(plot) return [xplotter] else: errors.append("The 3dFSC estimation of the 3dFSC was not selected" "in the protocol form.") return errors