def savePlots(self, results=None): """ Store png images of the plots to be used as images, """ # Add resmap libraries to the path sys.path.append(os.environ['RESMAP_HOME']) # This is needed right now because we are having # some memory problem with matplotlib plots right now in web Plotter.setBackend('Agg') self._plotVolumeSlices().savefig(self._getExtraPath('volume1.map.png')) plot = self._plotResMapSlices(results['resTOTALma']) plot.savefig(self._getExtraPath('volume1_resmap.map.png')) self._plotHistogram().savefig(self._getExtraPath('histogram.png'))
def main(): parser = argparse.ArgumentParser(prog='Scipion Plot') parser.add_argument('--file', help='File to visualize', required=True) parser.add_argument('--block', help='Block to visualize') parser.add_argument('--type', help='Plot type') parser.add_argument('--columns', help='Columns to plot') parser.add_argument('--xcolumn', help='X Column to plot') parser.add_argument('--orderColumn', help='Column to order') parser.add_argument('--orderDir', help='Order direction(ASC, DESC)') parser.add_argument('--bins', help='If plot type is histogram, number of bins') parser.add_argument('--colors', help='Colors to plot columns') parser.add_argument('--styles', help='Styles to plot columns') parser.add_argument('--markers', help='Markers to plot columns') parser.add_argument('--title', help='Plot title', default='') parser.add_argument('--ytitle', help='Y axis title', default='') parser.add_argument('--xtitle', help='X axis title', default='') args = parser.parse_args() plotfile = args.file block = args.block if args.block else '' type = args.type columns = args.columns xcolumn = args.xcolumn orderColumn = args.orderColumn orderDir = args.orderDir bins = args.bins colors = args.colors styles = args.styles markers = args.markers title = args.title xtitle = args.xtitle ytitle = args.ytitle Plotter.setBackend('TkAgg') plotter = EmPlotter.createFromFile(plotfile, block, type, columns, colors, styles, markers, xcolumn, ytitle, xtitle, title, bins, orderColumn, orderDir) plotter.show(block=True)
def main(): parser = argparse.ArgumentParser(prog='Scipion Plot') parser.add_argument('--file', help='File to visualize', required=True) parser.add_argument('--block', help='Block to visualize') parser.add_argument('--type', help='Plot type') parser.add_argument('--columns', help='Columns to plot') parser.add_argument('--xcolumn', help='X Column to plot') parser.add_argument('--orderColumn', help='Column to order') parser.add_argument('--orderDir', help='Order direction(ASC, DESC)') parser.add_argument('--bins', help='If plot type is histogram, number of bins') parser.add_argument('--colors', help='Colors to plot columns') parser.add_argument('--styles', help='Styles to plot columns') parser.add_argument('--markers', help='Markers to plot columns') parser.add_argument('--title', help='Plot title', default='') parser.add_argument('--ytitle', help='Y axis title', default='') parser.add_argument('--xtitle', help='X axis title', default='') args = parser.parse_args() #print args plotfile = args.file block = args.block if args.block else '' type = args.type columns = args.columns xcolumn = args.xcolumn orderColumn = args.orderColumn orderDir = args.orderDir bins = args.bins colors = args.colors styles = args.styles markers = args.markers title = args.title xtitle = args.xtitle ytitle = args.ytitle Plotter.setBackend('TkAgg') plotFile(plotfile, block, type, columns, colors, styles, markers, xcolumn, ytitle, xtitle, title, bins, orderColumn, orderDir).show(block=True)
def __init__(self, path, master=None): # Load global configuration self.projName = os.path.basename(path) try: projTitle = '%s (%s on %s)' % (self.projName, pwutils.getLocalUserName(), pwutils.getLocalHostName()) except Exception: projTitle = self.projName self.projPath = path self.project = self.loadProject() # TODO: put the menu part more nicely. From here: menu = MenuConfig() projMenu = menu.addSubMenu('Project') projMenu.addSubMenu('Browse files', 'browse', icon='fa-folder-open.gif') projMenu.addSubMenu('Remove temporary files', 'delete', icon='fa-trash-o.gif') projMenu.addSubMenu('Manage project labels', 'labels', icon=Icon.TAGS) projMenu.addSubMenu('Toggle color mode', 'color_mode', shortCut="Ctrl+t", icon=Icon.ACTION_VISUALIZE) projMenu.addSubMenu('Select all protocols', 'select all', shortCut="Ctrl+a") projMenu.addSubMenu('Find protocol to add', 'find protocol', shortCut="Ctrl+f") projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Import workflow', 'load_workflow', icon='fa-download.gif') projMenu.addSubMenu('Search workflow', 'search_workflow', icon='fa-search.gif') if pw.Config.debugOn(): projMenu.addSubMenu('Export tree graph', 'export_tree') projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Debug Mode', 'debug mode', shortCut="Ctrl+d", icon='debug.gif') projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Notes', 'notes', icon='fa-pencil.gif') projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Exit', 'exit', icon='fa-sign-out.gif') helpMenu = menu.addSubMenu('Help') helpMenu.addSubMenu('Online help', 'online_help', icon='fa-external-link.gif') helpMenu.addSubMenu('About', 'about', icon='fa-question-circle.gif') helpMenu.addSubMenu('Contact support', 'contact_us', icon='fa-question-circle.gif') self.menuCfg = menu if self.project.openedAsReadOnly(): self.projName += "<READ ONLY>" # Notify about the workflow in this project self.selectedProtocol = None self.showGraph = False Plotter.setBackend('TkAgg') ProjectBaseWindow.__init__(self, projTitle, master, minsize=(90, 50), icon=Icon.SCIPION_ICON_PROJ) OS.handler().maximizeWindow(self.root) self.switchView(VIEW_PROTOCOLS) self.initProjectTCPServer( ) # Socket thread to communicate with clients ProjectWorkflowNotifier(self.project).notifyWorkflow()
def __init__(self, path, master=None): # Load global configuration self.projName = os.path.basename(path) try: projTitle = '%s (%s on %s)' % (self.projName, pwutils.getLocalUserName(), pwutils.getLocalHostName()) except Exception: projTitle = self.projName self.projPath = path self.loadProject() # TODO: put the menu part more nicely. From here: menu = MenuConfig() projMenu = menu.addSubMenu('Project') projMenu.addSubMenu('Browse files', 'browse', icon='fa-folder-open.png') projMenu.addSubMenu('Remove temporary files', 'delete', icon='fa-trash-o.png') projMenu.addSubMenu('Manage project labels', 'labels', icon=Icon.TAGS) projMenu.addSubMenu('Toogle color mode', 'color_mode', shortCut="Ctrl+t", icon=Icon.ACTION_VISUALIZE) projMenu.addSubMenu('Select all protocols', 'select all', shortCut="Ctrl+a") projMenu.addSubMenu('Find protocol to add', 'find protocol', shortCut="Ctrl+f") projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Import workflow', 'load_workflow', icon='fa-download.png') projMenu.addSubMenu('Search workflow', 'search_workflow', icon = 'fa-search.png') projMenu.addSubMenu('Export tree graph', 'export_tree') projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Notes', 'notes', icon='fa-pencil.png') projMenu.addSubMenu('', '') # add separator projMenu.addSubMenu('Exit', 'exit', icon='fa-sign-out.png') helpMenu = menu.addSubMenu('Help') helpMenu.addSubMenu('Online help', 'online_help', icon='fa-external-link.png') helpMenu.addSubMenu('About', 'about', icon='fa-question-circle.png') helpMenu.addSubMenu('Contact support', 'contact_us', icon='fa-question-circle.png') self.menuCfg = menu # TODO: up to here if self.project.openedAsReadOnly(): self.projName += "<READ ONLY>" # Notify about the workflow in this project self.icon = self.generalCfg.icon.get() self.selectedProtocol = None self.showGraph = False Plotter.setBackend('TkAgg') ProjectBaseWindow.__init__(self, projTitle, master, icon=self.icon, minsize=(90,50)) self.root.attributes("-zoomed", True) self.switchView(VIEW_PROTOCOLS) self.initProjectTCPServer() # Socket thread to communicate with clients ProjectWorkflowNotifier(self.project).notifyWorkflow()