===Using Data in our Report=== Our code currently looks like this... import ardi.util.mplreport @mplreport.ardireport("Sample Report") def CreateReport(report,args): fig,ax = report.CreatePage(1) report.Title() thedata = report.FetchHistory("'Temperature' PROPERTYEX ALLPOINTS") if report.FetchFailure(): report.Failed("\n".join(report.errors)) report.Save() First, we need the //values//. These can be found as a Pandas dataframe in **thedata.data**. For instance, we could draw each channel as a line chart using the following code... frame = thedata.data for colname in frame.columns: ax.plot(frame[colname],label=colname) This gives us a simple plot of every temperature in our ARDI system. To make it prettier and easier to read, we can decorate our report with extra MatPlotLib code... ax.margins(x=0) ax.grid() ax.legend() ax.set_xlabel("Time") ax.set_ylabel("Temperature (Deg C)") The [[mplreport]] object also has a function called [[TimeAxis]] which creates a sensible time format on an axis given the range of the report. For example, a report that covers a few hours will use HH:MM format, while reports covering a week will include day and hour information, but omit seconds. report.TimeAxis(ax.xaxis) We can now see [[simple_example|the complete code]] of our simple report.