def toReportLab(cls, alphaBetaChl, reportlabconfig, make_graphs): from reportlab.platypus import Paragraph, Table localElements = [] localElements.append( Paragraph("Overview",reportlabconfig.styles['Heading3']) ) # Summary: overviewTableData = [ ["Max Conductance (gBar)", alphaBetaChl.conductance.rescale("mS/cm2") ], ["Reversal Potential", alphaBetaChl.reversalpotential.rescale("mV") ], ["Conductance Equation", "gBar * " + alphaBetaChl.eqn ], ] localElements.append( Table(overviewTableData, style=reportlabconfig.listTableStyle) ) # Plot out the States: for state,params in alphaBetaChl.statevars.iteritems(): localElements.append( Paragraph("State: %s"%state,reportlabconfig.styles['Heading3']) ) #Equations: eqns = [ "alpha(V) = (A+BV)/(C+exp( (V+D)/E) )", "beta(V) = (A+BV)/(C+exp( (V+D)/E) )", ] for eqn in eqns: localElements.append( Paragraph(eqn,reportlabconfig.styles['Normal']) ) # Alpha Beta ReportLabTools.buildAlphaBetaTable( elements=localElements, reportlabconfig=reportlabconfig, title="Alpha", params=params[0] ) ReportLabTools.buildAlphaBetaTable( elements=localElements, reportlabconfig=reportlabconfig, title="Beta1", params=params[1] ) if make_graphs: # Figures: fig = cls.PlotStateCurveSummary(alphaBetaChl, state, figsize=(5,5)) localElements.append( reportlabconfig.saveMPLToRLImage(fig, "somestate") ) import pylab pylab.close( fig.fig ) return localElements
def toReportLab(cls, alphaBetaBetaChl, reportlabconfig, make_graphs): from reportlab.platypus import Paragraph, Table localElements = [] localElements.append( Paragraph("Overview",reportlabconfig.styles['Heading3']) ) # Summary: overviewTableData = [ ["Channel Type", "AlphaBetaBetaChl"], ["Max Conductance (gBar)", alphaBetaBetaChl.conductance], ["Reversal Potential", alphaBetaBetaChl.reversalpotential], ["Conductance Equation", "gBar * " + alphaBetaBetaChl.eqn], ] localElements.append( Table(overviewTableData, style=reportlabconfig.listTableStyle) ) # Plot out the States: for state,params in alphaBetaBetaChl.statevars.iteritems(): localElements.append( Paragraph("State: %s"%state,reportlabconfig.styles['Heading3']) ) if make_graphs: fig = Summarise_MM_AlphaBetaChannel.PlotStateCurveSummary(alphaBetaBetaChl, state, figsize=(5,5)) localElements.append( reportlabconfig.saveMPLToRLImage(fig, "somestate") ) localElements.append( Paragraph("Equations",reportlabconfig.styles['Heading4']) ) #Equations: eqns = [ "beta2Threshold = %s"%alphaBetaBetaChl.beta2threshold, "beta = beta1 if V less than beta2Threshold otherwise beta2", "alpha(V) = (A+BV)/(C+exp( (V+D)/E) )", "beta(V) = (A+BV)/(C+exp( (V+D)/E) )", ] for eqn in eqns: localElements.append( Paragraph(eqn,reportlabconfig.styles['Normal']) ) # Alpha Beta ReportLabTools.buildAlphaBetaTable( elements=localElements, reportlabconfig=reportlabconfig, title="Alpha", params=params[0] ) ReportLabTools.buildAlphaBetaTable( elements=localElements, reportlabconfig=reportlabconfig, title="Beta1", params=params[1] ) ReportLabTools.buildAlphaBetaTable( elements=localElements, reportlabconfig=reportlabconfig, title="Beta2", params=params[2] ) return localElements