var data = google.visualization.arrayToDataTable([ $labels, $data ], false); var chart = new google.visualization.ColumnChart(document.getElementById('chart_div')); chart.draw(data); } </script> </head> <body> <div id = 'chart_div' style='width:800; height:600'><div> </body> </html>""") #format the data correctly chart_data_str = '' for row in chart_data[1:]: chart_data_str += '%s,\n' % row completed_html = htmlString.Substitute(labels=chart_data[0], data=chart_data_str) #Substitute the data into the template #Write the html to a file with open('chart.html', 'w') as f: f.write(completed_html)