def update(tmp=0):
        global position, plotparslider
        position = tmp
        position = max(0,position)
        position = min(nplots-nperscreen, position)
        t = tic()
        for i,ax in enumerate(plotparsaxs):
            ax.cla()
            for item in ax.get_xticklabels() + ax.get_yticklabels(): item.set_fontsize(fontsize)
            ax.hold(True)
            nplt = i+position
            if nplt<nplots:
                for pd,plotdata in enumerate(allplotdata):
                    try:
                        this = plotdata[nplt,:]
                        ax.set_title(this[0])
                        if isinstance(this[1], dict):
                            if len(this[1].keys())==1:  this[1] = this[1][0] # Actually needs to be an odict
                            elif len(this[1].keys())>1: raise OptimaException('Expecting a number or an array or even an odict with one key, but got an odict with multiple keys (%s)' % this[0])
                        if   isnumber(this[1]):        ax.plot(tvec, 0*tvec+this[1])
                        elif len(this[1])==0:          ax.set_title(this[0]+' is empty')
                        elif len(this[1])==1:          ax.plot(tvec, 0*tvec+this[1])
                        elif len(this[1])==len(tvec):  ax.plot(tvec, this[1])
                        else: pass # Population size, doesn't use control points
                        printv('Plot %i/%i...' % (i*len(allplotdata)+pd+1, len(plotparsaxs)*len(allplotdata)), 2, verbose)
                    except Exception as E: 
                        if die: raise E
                        else: print('??????: %s' % repr(E))
                    try: 
                        if not(hasattr(this[3],'__len__') and len(this[3])==0): ax.scatter(this[2],this[3])
                    except Exception: pass # print('Problem with "%s": "%s"' % (this[0], repr(E)))
                    if pd==len(allplotdata)-1: # Do this for the last plot only
                        ax.set_ylim((0,1.1*ax.get_ylim()[1]))
                        ax.set_xlim((tvec[0],tvec[-1]))
        toc(t)