def project_um(): with open('Bangsai.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] list_ec = [] list_temp = [] for i in test: data = i[0].split(';') list_date.append(data[1]) list_do.append(data[2]) list_ec.append(data[3]) list_temp.append(data[4]) list_do = change_value_to_float(list_do) list_ec = change_value_to_float(list_ec) list_temp = change_value_to_float(list_temp) #created HTML output_file = open('test-Project.html', 'w') chart = lineChart(name="lineChart Bangsai D.O.", width=1244) xdata = range(8708) ydata = list_do extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}} chart.add_serie(y=ydata, x=xdata, name='D.O.', extra=extra_serie) chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def pamok(): """ """ list_date, list_do, list_ec, list_temp, ave_do_pamok, ave_ec_pamok, ave_temp_pamok = riverside_pamok.data_split() list_mean_ec_in_aday = average_per_day(list_ec, list_date) #created HTML output_file = open('Chart mean EC in a day of Pamok.html', 'w') chart = lineChart(name="lineChart Pamok E.C.", width = 1244) xdata = range(1, 32) ydata1 = list_mean_ec_in_aday[:30] ydata2 = list_mean_ec_in_aday[30:61] ydata3 = list_mean_ec_in_aday[61:91] ydata4 = list_mean_ec_in_aday[91:122] ydata5 = list_mean_ec_in_aday[122:153] ydata6 = list_mean_ec_in_aday[153:] chart.add_serie(y=ydata1, x=xdata, name='เม.ย.') chart.add_serie(y=ydata2, x=xdata, name='พ.ค.') chart.add_serie(y=ydata3, x=xdata, name='มิ.ย.') chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def linechart(x, y): chart = nvd3.lineChart(name=y.name, height=200, width=350) chart.add_serie(y=y.tolist(), x=np.arange(len(y)), name=y.name) chart.buildcontent() chart_html = chart.htmlcontent return chart_html
def project_um(): with open('Bangsai.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] for i in test: data = i[0].split(';') list_date.append(data[1]) list_do.append(data[2]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) #created HTML output_file = open('DO-Bangsai.html', 'w') chart = lineChart(name="lineChart Bangsai DO", width=1244) xdata = range(1, 32) ydata = list_mean_do_in_aday[:30] ydata2 = list_mean_do_in_aday[30:61] ydata3 = list_mean_do_in_aday[61:91] ydata4 = list_mean_do_in_aday[91:122] ydata5 = list_mean_do_in_aday[122:153] ydata6 = list_mean_do_in_aday[153:] chart.add_serie(y=ydata, x=xdata, name='เม.ย.') chart.add_serie(y=ydata2, x=xdata, name='พ.ค.') chart.add_serie(y=ydata3, x=xdata, name='มิ.ย.') chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def visualize_print_log(filename): try: data = np.loadtxt(filename) if data.ndim == 1: data = data[:, np.newaxis] except Error as e: return 'Cannot load file {}: {}'.format(filename, str(e)) chart_name = os.path.splitext(os.path.basename(filename))[0] chart = nvd3.lineChart(name=chart_name + '_log_chart', height=args.chart_height, y_axis_format='.03g') if args.sample < 0: step = max(data.shape[0] / -args.sample, 1) else: step = args.sample xdata = np.arange(0, data.shape[0], step) # if there is only one curve, we also show the running min and max if data.shape[1] == 1: # We also print the running min and max for the steps. trunc_size = data.shape[0] / step running_mat = data[:trunc_size * step].reshape((trunc_size, step)) chart.add_serie(x=xdata[:trunc_size], y=running_mat.min(axis=1), name='running_min') chart.add_serie(x=xdata[:trunc_size], y=running_mat.max(axis=1), name='running_max') chart.add_serie(x=xdata, y=data[xdata, 0], name=chart_name) else: for i in range(0, min(data.shape[1], args.max_curves)): # data should have 4 dimensions. chart.add_serie(x=xdata, y=data[xdata, i], name='{}[{}]'.format(chart_name, i)) return jsonify_nvd3(chart)
def draw(handle, type, logs, **kwargs): kwparams = { 'name': "lineChart", 'width': 1000, 'height': 500, 'chart_attr': { 'forceX': x_axis_scale(logs), 'forceY': y_axis_scale(logs), # 'yAxis.scale': y_axis_scale(logs), 'xAxis.axisLabel': ('"%s"' % kwargs['xlabel']), 'yAxis.axisLabel': ('"%s"' % kwargs['ylabel']), 'useInteractiveGuideline': 'true', # 'x2Axis.scale': xAxisScale(logs), # 'y2Axis.scale': yAxisScale(logs), }, } chart = None if type == LINE_CHART: chart = lineChart(**kwparams) elif type == LINE_WITH_FOCUS_CHART: chart = lineWithFocusChart(**kwparams) chart.show_labels = True count = 0 for alg in logs: extra_serie = { "tooltip": {"y_start": kwargs['ylabel'] + "is ", "y_end": "!"}, } chart.add_serie(y=logs[alg]['y'], x=logs[alg]['x'], color=COLOR_LIST[count], extra=extra_serie, name=alg) count += 1 chart.buildhtml() handle.write(str(chart))
def samlae(): """ """ list_date, list_do, list_ec, list_temp, ave_do_samlae, ave_ec_samlae, ave_temp_samlae = ( riverside_samlae.data_split() ) list_mean_ec_in_aday = average_per_day(list_ec, list_date) # created HTML output_file = open("Chart mean EC in a day of Samlae.html", "w") chart = lineChart(name="lineChart Samlae E.C.", width=1244) xdata = range(1, 32) xdata1 = range(17, 32) ydata1 = list_mean_ec_in_aday[:30] ydata2 = list_mean_ec_in_aday[30:43] ydata4 = list_mean_ec_in_aday[43:57] ydata5 = list_mean_ec_in_aday[57:82] ydata6 = list_mean_ec_in_aday[82:] chart.add_serie(y=ydata1, x=xdata, name="เม.ย.") chart.add_serie(y=ydata2, x=xdata, name="พ.ค.") chart.add_serie(y=ydata4, x=xdata1, name="ก.ค.") chart.add_serie(y=ydata5, x=xdata, name="ส.ค.") chart.add_serie(y=ydata6, x=xdata, name="ก.ย.") chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def plotData(self, getTickerData): output_file = open('ticker.html', 'w') type = "lineChart" chart = lineChart(name=type, x_is_date=True, x_axis_format="%Y-%m-%d", height=450, width=1300) extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " calls"}} # Get Timestamp and Y-Values for idx, ticker in enumerate(self.ticker): print ticker df = getTickerData(ticker) timestamp = [] xdata = [time.mktime(s.timetuple()) * 1000 for s in df.index] tickerData = df['Open'] color = "#%06x" % random.randint(0, 0xFFFFFF) print color chart.add_serie(y=tickerData, x=xdata, name=ticker, extra=extra_serie, **{'color': color}) chart.buildhtml() output_file.write(chart.htmlcontent) output_file.close()
def draw(handle, type, logs, **kwargs): kwparams = { 'name': "lineChart", 'width': 1000, 'height': 500, 'chart_attr': { 'forceY': yAxisScale(logs), 'forceX': xAxisScale(logs), 'xAxis.axisLabel': ('"%s"' % kwargs['xlabel']), 'yAxis.axisLabel': ('"%s"' % kwargs['ylabel']), }, } chart = None if type == LINE_CHART: chart = lineChart(**kwparams) elif type == LINE_WITH_FOCUS_CHART: chart = lineWithFocusChart(**kwparams) chart.show_labels = True for alg in logs: extra_serie = { "tooltip": { "y_start": kwargs['ylabel'] + "is ", "y_end": "!" } } chart.add_serie(y=logs[alg]['y'], x=logs[alg]['x'], extra=extra_serie, name=alg) chart.buildhtml() handle.write(str(chart))
def nakhonsawan(): """ """ list_date, list_do, list_ec, list_temp, ave_do_nakhonsawan, ave_ec_nakhonsawan, ave_temp_nakhonsawan = riverside_nakhonsawan.data_split() list_mean_ec_in_aday = average_per_day(list_ec, list_date) #created HTML output_file = open('Chart mean EC in a day of Nakhonsawan.html', 'w') chart = lineChart(name="lineChart Nakhonsawan E.C.", width = 1244) xdata = range(1, 32) xdata1 = range(23, 32) ydata1 = list_mean_ec_in_aday[23:31] ydata2 = list_mean_ec_in_aday[31:61] ydata3 = list_mean_ec_in_aday[61:91] ydata4 = list_mean_ec_in_aday[91:122] ydata5 = list_mean_ec_in_aday[122:152] ydata6 = list_mean_ec_in_aday[152:] chart.add_serie(y=ydata1, x=xdata1, name='เม.ย.') chart.add_serie(y=ydata2, x=xdata, name='พ.ค.') chart.add_serie(y=ydata3, x=xdata, name='มิ.ย.') chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def getCaseData(self,selectData): """Method to do plot Cases for DueDate counts from df""" df = selectData() df_DueDate = df['RHZ'].value_counts() print df_DueDate values = [] labels = [] for idx, item in enumerate(df_DueDate): values.append(int(df_DueDate[idx])) labels.append(df_DueDate.index[idx]) output_file = open('casesDueDate.html', 'w') type = "lineChart" chart = lineChart(name=type, x_is_date=True, width=1000, height=300, show_legend=False) # lissajous parameters of a/b """delta = pi / 2 t = linspace(-pi, pi, 300) for i in range(0, 4): x = sin(a[i] * t + delta) y = sin(b[i] * t)""" chart.add_serie(y=values, x=labels, name='jeoma', color='red') chart.buildhtml() output_file.write(chart.htmlcontent) output_file.close()
def data_split(): with open("Data/Pamok.csv") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] for i in test: list_date.append(i[1]) list_do.append(i[2]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) # created HTML output_file = open("DO-Pamok.html", "w") chart = lineChart(name="lineChart Pamok DO", width=1244) xdata = range(1, 32) ydata = list_mean_do_in_aday[:30] ydata2 = list_mean_do_in_aday[30:61] ydata3 = list_mean_do_in_aday[61:91] ydata4 = list_mean_do_in_aday[91:122] ydata5 = list_mean_do_in_aday[122:153] ydata6 = list_mean_do_in_aday[153:] chart.add_serie(y=ydata, x=xdata, name="เม.ย.") chart.add_serie(y=ydata2, x=xdata, name="พ.ค.") chart.add_serie(y=ydata3, x=xdata, name="มิ.ย.") chart.add_serie(y=ydata4, x=xdata, name="ก.ค.") chart.add_serie(y=ydata5, x=xdata, name="ส.ค.") chart.add_serie(y=ydata6, x=xdata, name="ก.ย.") chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def test_lineChart_tooltip(self): """Test Line Chart""" type = "lineChart" chart = lineChart(name=type, date=True, height=350) nb_element = 100 xdata = list(range(nb_element)) xdata = [1365026400000 + x * 100000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = { "tooltip": { "y_start": "There is ", "y_end": " random values" } } chart.add_serie(name="Random X-Axis", y=ydata, x=xdata, extra=extra_serie, **kwargs1) extra_serie = {"tooltip": {"y_start": "", "y_end": " double values"}} chart.add_serie(name="Double X-Axis", y=ydata2, x=xdata, extra=extra_serie, **kwargs2) chart.buildhtml()
def chainat(): """ """ list_date, list_do, list_ec, list_temp, ave_do_chainat, ave_ec_chainat, ave_temp_chainat = ( riverside_chainat.data_split() ) list_mean_ec_in_aday = average_per_day(list_ec, list_date) # created HTML output_file = open("Chart mean EC in a day of Chainat.html", "w") chart = lineChart(name="lineChart Chainat E.C.", width=1244) xdata = range(1, 32) ydata1 = list_mean_ec_in_aday[:30] ydata2 = list_mean_ec_in_aday[30:61] ydata3 = list_mean_ec_in_aday[61:91] ydata4 = list_mean_ec_in_aday[91:122] ydata5 = list_mean_ec_in_aday[122:153] ydata6 = list_mean_ec_in_aday[153:] chart.add_serie(y=ydata1, x=xdata, name="เม.ย.") chart.add_serie(y=ydata2, x=xdata, name="พ.ค.") chart.add_serie(y=ydata3, x=xdata, name="มิ.ย.") chart.add_serie(y=ydata4, x=xdata, name="ก.ค.") chart.add_serie(y=ydata5, x=xdata, name="ส.ค.") chart.add_serie(y=ydata6, x=xdata, name="ก.ย.") chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def data_split(): with open('Data/Samlae.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] for i in test: data = i[0].split(';') list_date.append(data[1]) list_do.append(data[2]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) #created HTML output_file = open('DO-Samlae.html', 'w') chart = lineChart(name="lineChart Samlae DO", width=1244) xdata = range(1, 32) xdata2 = range(17, 32) ydata = list_mean_do_in_aday[:30] ydata2 = list_mean_do_in_aday[30:43] ydata4 = list_mean_do_in_aday[43:58] ydata5 = list_mean_do_in_aday[58:83] ydata6 = list_mean_do_in_aday[83:] chart.add_serie(y=ydata, x=xdata, name='เม.ย.') chart.add_serie(y=ydata2, x=xdata, name='พ.ค.') chart.add_serie(y=ydata4, x=xdata2, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def project_um(): with open('Data/Ayuthaya.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] list_ec = [] list_temp = [] for i in test: data = i[0].split(';') list_date.append(data[1]) list_do.append(data[2]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) #created HTML output_file = open('DO-Ayuthaya.html', 'w') chart = lineChart(name="lineChart Ayuthaya D.O.", width=1244) xdata = range(1, 32) ydata = list_mean_do_in_aday[:31] ydata2 = list_mean_do_in_aday[31:62] ydata3 = list_mean_do_in_aday[62:] chart.add_serie(y=ydata, x=xdata, name='ก.ค.') chart.add_serie(y=ydata2, x=xdata, name='ส.ค.') chart.add_serie(y=ydata3, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def getCaseData(self, selectData): """Method to do plot Cases for DueDate counts from df""" df = selectData() df_DueDate = df['RHZ'].value_counts() print df_DueDate values = [] labels = [] for idx, item in enumerate(df_DueDate): values.append(int(df_DueDate[idx])) labels.append(df_DueDate.index[idx]) output_file = open('casesDueDate.html', 'w') type = "lineChart" chart = lineChart(name=type, x_is_date=True, width=1000, height=300, show_legend=False) # lissajous parameters of a/b """delta = pi / 2 t = linspace(-pi, pi, 300) for i in range(0, 4): x = sin(a[i] * t + delta) y = sin(b[i] * t)""" chart.add_serie(y=values, x=labels, name='jeoma', color='red') chart.buildhtml() output_file.write(chart.htmlcontent) output_file.close()
def data_split(): with open('Dowkanong.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] for i in test: data = i[0].split(';') list_date.append(data[1]) list_do.append(data[2]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) #created HTML output_file = open('DO-Dowkanong.html', 'w') chart = lineChart(name="lineChart Dowkanong DO", width=1244) xdata = range(1, 32) xdata2 = range(14, 32) ydata = list_mean_do_in_aday[:18] ydata2 = list_mean_do_in_aday[18:43] ydata3 = list_mean_do_in_aday[43:] chart.add_serie(y=ydata, x=xdata2, name='ก.ค.') chart.add_serie(y=ydata2, x=xdata, name='ส.ค.') chart.add_serie(y=ydata3, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def data_split(): with open('Nakhonsawan.csv', encoding="utf-8") as csvfile: test = csv.reader(csvfile) list_date = [] list_do = [] for i in test: data = i[0].split(';') list_date.append(data[2]) list_do.append(data[4]) list_do = change_value_to_float(list_do) list_mean_do_in_aday = average_per_day(list_do, list_date) #created HTML output_file = open('DO-Nakhonsawan.html', 'w') chart = lineChart(name="lineChart Nakhonsawan DO", width=1244) xdata = range(1, 32) xdata2 = range(23, 32) ydata = list_mean_do_in_aday[:8] ydata2 = list_mean_do_in_aday[8:38] ydata3 = list_mean_do_in_aday[38:68] ydata4 = list_mean_do_in_aday[68:99] ydata5 = list_mean_do_in_aday[99:129] ydata6 = list_mean_do_in_aday[129:] chart.add_serie(y=ydata, x=xdata2, name='เม.ย.') chart.add_serie(y=ydata2, x=xdata, name='พ.ค.') chart.add_serie(y=ydata3, x=xdata, name='มิ.ย.') chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def chart_line(ydata,xdata,filename): output_file = open(filename, 'w') type = 'lineChart' chart = lineChart(name=type, x_is_date=True, color_category='category20c', height=450, width=900) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") chart.add_serie(y=ydata, x=xdata) chart.buildhtml() output_file.write(chart.htmlcontent)
def line_chart(): content = read_data('/var/www/html/assignment5/static/dataset_chart1.csv') station, ydata = validate_data(content) kwargs1 = {'height':'3000'} chart = lineChart(name="lineChart",height=900,width=1800,margin_bottom=20, margin_top=40, margin_left=60, margin_right=10) xdata = list(range(1,13)) for it in range(0, len(station)-1): chart.add_serie(y=ydata[it],x=xdata,name=station[it]) chart.buildhtml() return chart.htmlcontent
def test_lineChart(self): """Test Line Chart""" type = "lineChart" chart = lineChart(name=type, date=True, height=350) nb_element = 100 xdata = list(range(nb_element)) xdata = [1365026400000 + x * 100000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] chart.add_serie(y=ydata, x=xdata) chart.add_serie(y=ydata2, x=xdata) chart.buildhtml()
def __init__(self, size=None, theme=None): global _INITED if not _INITED: initialize_javascript() _INITED = True self.size = size or (700, 400) self._lines = lineChart(name='lineChart', x_is_date=True, x_axis_format='%Y-%m-%d', height=self.size[1], width=self.size[0])
def test_lineChart(self): """Test Line Chart""" type = "lineChart" chart = lineChart(name=type, date=True, height=350) nb_element = 100 xdata = range(nb_element) xdata = map(lambda x: 1365026400000 + x * 100000, xdata) ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = map(lambda x: x * 2, ydata) chart.add_serie(y=ydata, x=xdata) chart.add_serie(y=ydata2, x=xdata) chart.buildhtml()
def index_chart(request): """ lineChart page """ today = datetime.date.today() year = today.year kwargs2 = {'color': 'red'} stock_list = CproChart.objects.filter(chart_in_hm_choices=u'STOCK',chart_time__year=year) xdata = [int(calendar.timegm(t.chart_time.timetuple()))*1000 for t in stock_list] ydata = [float("%.2f"%v.chart_value) for v in stock_list] chart = lineChart(name='lineChart', container='lineChart',height=400, width=400, x_is_date=True, x_axis_format="%d %b %Y") #xdata = [1365026400000000, 1365026500000000, 1365026600000000] #ydata = [-6, 5, -1] #tooltip_str = "'<center><b>'+key+'</b></center>' + y + ' 增长 ' + x;" extra_serie = {"tooltip": {"y_start": "净值", "y_end": ""}, "date_format": "%Y年%m月%d日", #"tooltip_str": tooltip_str, } chart.add_serie(name=u"股票净值", y=ydata, x=xdata, extra=extra_serie,**kwargs2) chart.buildhtml() chart_html = chart.jschart #-------------------------------------------------------------- chart2 = lineChart(name='lineChart2',container='lineChart2',height=400, width=400, x_is_date=True, x_axis_format="%d %b %Y") fund_list = CproChart.objects.filter(chart_in_hm_choices=u'FUND',chart_time__year=year) xdata2 = [int(calendar.timegm(t.chart_time.timetuple()))*1000 for t in fund_list] ydata2 = [float("%.2f"%v.chart_value) for v in fund_list] #xdata2 = [1365988400000000, 1365026500000000, 1365026600000000] #ydata2 = [8, 5, 3] extra_serie2 = {"tooltip": {"y_start": "净值", "y_end": ""}, "date_format": "%Y年%m月%d日"} chart2.add_serie(name=u"期货净值", y=ydata2, x=xdata2, extra=extra_serie2,**kwargs2) chart2.buildhtml() chart_html2 = chart2.jschart adimg = CproadManager.objects.all() return chart_html,chart_html2
def d3js_htmls(self): """ visualize data using D3.js(wrapped by python-nvd3) """ global html_lineChart, html_pieChart if self.vars_dict.get('LINE_CHART'): chart_name = self.vars_dict.get('TABULATE_FILE') height = 768 width = 1366 line_chart = lineChart(name='[line]'+chart_name, height=height, width=width) line_data = self.get_tabulate_data(self.vars_dict.get('LAST_DAYS')) # x_data = [each[0].strip() for each in line_data][1:] # x_data = map(lambda x: mktime(datetime.strptime(x, '%Y-%m-%d').timetuple()), x_data) x_data = list(range(-30, 0)) name_list = line_data[0][1:] y_data_list = [] for i in range(1, len(line_data[0])): y_data_list.append([each[i] for each in line_data[1:]]) extra_serie = { 'tooltip': { 'y_start': '', 'y_end': 'counts' } } for name, y_data in zip(name_list, y_data_list): line_chart.add_serie(y=y_data, x=x_data, name=name, extra=extra_serie) line_chart.buildhtml() html_lineChart = line_chart.htmlcontent if self.vars_dict.get('PIE_CHART'): rows = self.res_counts xdata, ydata = zip(*rows) extra_serie = { 'tooltip': { 'y_start': '', 'y_end': 'counts' } } chart_name = self.vars_dict.get('FILE_PATH') height = 768 width = 1366 pie_chart = pieChart(name='[pie]'+chart_name, color_category='category20c', height=height, width=width) pie_chart.set_containerheader("\n\n<h2>" + chart_name + "</h2>\n\n") pie_chart.add_serie(y=ydata, x=xdata, extra=extra_serie) pie_chart.buildhtml() html_pieChart = pie_chart.htmlcontent return html_lineChart, html_pieChart
def hello(): input_data = list( csv.reader(open('dateCrimeOutput.txt', 'rb'), delimiter='\t')) chart = lineChart(name="lineChart", x_is_date=False, height=800, width=1800, margin_bottom=200, margin_top=40, margin_left=60, margin_right=60) crimes = [] for row in input_data: crimes.append([row[0], row[1], int(row[2])]) crimes = sorted(crimes, key=lambda crimes: ([crimes[0], crimes[1]])) xdata = [] current_crime = None i = 0 for crime in crimes: if str(crime[0]) == current_crime: xdata.append(crime[1]) globals()['ydata%s' % i].append(crime[2]) else: current_crime = crime[0] i = i + 1 globals()['name%s' % i] = str(crime[0]) globals()['ydata%s' % i] = [] xdata.append(str(crime[1])) globals()['ydata%s' % i].append(crime[2]) kwargs1 = {'shape': 'circle', 'size': '20'} # kwargs2 = {'shape': 'cross', 'size': '4'} i = 1 while True: try: chart.add_serie(name=globals()['name%s' % i], y=globals()['ydata%s' % i], x=xdata, **kwargs1) i = i + 1 except: break chart.buildhtml() print chart.htmlcontent return chart.htmlcontent
def probe(probe_id): probe = probe_storage.get_probe(probe_id) chart = None if(probe['type'] == "PingProbe" and 'result' in probe): chart = lineChart(name="lineChart", x_is_date=True, x_axis_format="%d-%m-%y %H:%M:%S", height=250) xdata = [] min_data = [] avg_data = [] max_data = [] for result in probe['result']: if 'error' in result: # TODO, need to take into account that some probes # give an error and some don't This just assumes # all probes have errors break # TODO, Convert timestamp to format using function xdata.append(int(result['timestamp'])*1000) min_data.append(result['min']) avg_data.append(result['avg']) max_data.append(result['max']) extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}} chart.add_serie(y=min_data, x=xdata, name='min rtt(ms)', extra=extra_serie) extra_serie = {"tooltip": {"y_start": "", "y_end": " min"}} chart.add_serie(y=avg_data, x=xdata, name='avg rtt(ms)', extra=extra_serie) extra_serie = {"tooltip": {"y_start": "", "y_end": " min"}} chart.add_serie(y=max_data, x=xdata, name='max rtt(ms)', extra=extra_serie) chart.buildcontent() chart = chart.htmlcontent # convert timestamps for pretty printing for item in probe['result']: item['timestamp'] = format(datetime.fromtimestamp(item['timestamp']), '%d-%b-%y - %H:%M:%S') return render_template("probe.html", probe=probe, chart=chart)
def plot(filename): array=fileParser_json(filename) filename = 'plot.html' fw = open(filename, "w") type='lineChart' # for a date v/s frequency graph chart = lineChart(name=type, x_is_date=False, x_axis_format="AM_PM", height=600, width=1000) time_dict_days = {} for item in array: item_json = json.loads(item) # print item_json['id'] created_at = item_json['created_at'] time_stamp = time.strftime('%s', time.strptime(created_at, '%a %b %d %H:%M:%S +0000 %Y')) date_time = datetime.fromtimestamp(float(time_stamp)) # date_time = date_time+timedelta(hours=-5, minutes=30) day = date_time.day if str(day) in time_dict_days.keys(): list = time_dict_days.get(str(day)) list.append(date_time) else: list = [] list.append(date_time) time_dict_days[str(day)] = list print time_dict_days.keys() for key in time_dict_days.keys(): list = time_dict_days.get(key) time_dict = {} for item in list: hour = item.hour if str(hour) in time_dict.keys(): time_dict[str(hour)] = time_dict[str(hour)] + 1 else: time_dict[str(hour)] = 1 time_dict=collections.OrderedDict(sorted(time_dict.items())) xdata = [] ydata = [] for k in time_dict.keys(): xdata.append(k) ydata.append(time_dict[k]) chart.add_serie(name=key, y=ydata, x=xdata) chart.buildhtml() fw.write(chart.htmlcontent) fw.close()
def test_lineChart_tooltip(self): """Test Line Chart""" type = "lineChart" chart = lineChart(name=type, date=True, height=350) nb_element = 100 xdata = list(range(nb_element)) xdata = [1365026400000 + x * 100000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " random values"}} chart.add_serie(name="Random X-Axis", y=ydata, x=xdata, extra=extra_serie, **kwargs1) extra_serie = {"tooltip": {"y_start": "", "y_end": " double values"}} chart.add_serie(name="Double X-Axis", y=ydata2, x=xdata, extra=extra_serie, **kwargs2) chart.buildhtml()
def ayuthaya(): """ """ list_date, list_do, list_ec, list_temp, ave_do_ayuthaya, ave_ec_ayuthaya, ave_temp_ayuthaya = riverside_ayuthaya.data_split() list_mean_ec_in_aday = average_per_day(list_ec, list_date) #created HTML output_file = open('Chart mean EC in a day of Ayuthaya.html', 'w') chart = lineChart(name="lineChart Ayuthaya E.C.", width = 1244) xdata = range(1, 32) ydata4 = list_mean_ec_in_aday[:31] ydata5 = list_mean_ec_in_aday[31:62] ydata6 = list_mean_ec_in_aday[62:] chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def dowkanong(): """ """ list_date, list_do, list_ec, list_temp, ave_do_dowkanong, ave_ec_dowkanong, ave_temp_dowkanong = riverside_dowkanong.data_split() list_mean_ec_in_aday = average_per_day(list_ec, list_date) #created HTML output_file = open('Chart mean EC in a day of Dowkanong.html', 'w') chart = lineChart(name="lineChart Dowkanong E.C.", width = 1244) xdata = range(1, 32) ydata4 = list_mean_ec_in_aday[14:31] ydata5 = list_mean_ec_in_aday[31:56] ydata6 = list_mean_ec_in_aday[56:] chart.add_serie(y=ydata4, x=xdata, name='ก.ค.') chart.add_serie(y=ydata5, x=xdata, name='ส.ค.') chart.add_serie(y=ydata6, x=xdata, name='ก.ย.') chart.buildhtml() output_file.write(chart.htmlcontent) # close Html file output_file.close()
def plotData(self,getTickerData): output_file = open('ticker.html', 'w') type = "lineChart" chart = lineChart(name=type, x_is_date=True, x_axis_format="%Y-%m-%d", height=450, width=1300) extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " calls"}} # Get Timestamp and Y-Values for idx,ticker in enumerate(self.ticker): print ticker df = getTickerData(ticker) timestamp = [] xdata = [time.mktime(s.timetuple()) * 1000 for s in df.index] tickerData = df['Open'] color = "#%06x" % random.randint(0, 0xFFFFFF) print color chart.add_serie(y=tickerData, x=xdata, name=ticker, extra=extra_serie, **{'color': color}) chart.buildhtml() output_file.write(chart.htmlcontent) output_file.close()
def visualize_summary(filename): try: data = np.loadtxt(filename) except Error as e: return 'Cannot load file {}: {}'.format(filename, str(e)) chart_name = os.path.splitext(os.path.basename(filename))[0] chart = nvd3.lineChart(name=chart_name + '_summary_chart', height=args.chart_height, y_axis_format='.03g') if args.sample < 0: step = max(data.shape[0] / -args.sample, 1) else: step = args.sample xdata = np.arange(0, data.shape[0], step) # data should have 4 dimensions. chart.add_serie(x=xdata, y=data[xdata, 0], name='min') chart.add_serie(x=xdata, y=data[xdata, 1], name='max') chart.add_serie(x=xdata, y=data[xdata, 2], name='mean') chart.add_serie(x=xdata, y=data[xdata, 2] + data[xdata, 3], name='m+std') chart.add_serie(x=xdata, y=data[xdata, 2] - data[xdata, 3], name='m-std') return jsonify_nvd3(chart)
def visualize_summary(filename): try: data = np.loadtxt(filename) except Exception as e: return 'Cannot load file {}: {}'.format(filename, str(e)) chart_name = os.path.splitext(os.path.basename(filename))[0] chart = nvd3.lineChart(name=chart_name + '_summary_chart', height=args.chart_height, y_axis_format='.03g') if args.sample < 0: step = max(data.shape[0] / -args.sample, 1) else: step = args.sample xdata = np.arange(0, data.shape[0], step) # data should have 4 dimensions. chart.add_serie(x=xdata, y=data[xdata, 0], name='min') chart.add_serie(x=xdata, y=data[xdata, 1], name='max') chart.add_serie(x=xdata, y=data[xdata, 2], name='mean') chart.add_serie(x=xdata, y=data[xdata, 2] + data[xdata, 3], name='m+std') chart.add_serie(x=xdata, y=data[xdata, 2] - data[xdata, 3], name='m-std') return jsonify_nvd3(chart)
def plot_multiple_entitytimeseries_dbhandle(entities = [], output_file = 'immigration.html'): '''Plots timeseries for multiple entities. ''' db_conn = pm.Connection() dbhandle = db_conn['news'] from nvd3 import lineChart chart = lineChart(name='lineChart', height=400, width=700, date=True) for entity in entities: edges_with_entity = find_edges_with_entity(entity=entity, dbhandle=dbhandle) ts_dict = dd(int) for e in edges_with_entity: ts_dict[strtodate(e['date']).strftime('%s')] += 1 ts_list = [(ts_dict[k], int(k)*1000) for k in ts_dict] ts_list.sort(tcmp) xdata = [i[1] for i in ts_list] ydata = [i[0] for i in ts_list] extra_serie = {"tooltip": {"y_start": "", "y_end": " mentions"}} chart.add_serie(name=entity, y=ydata, x=xdata, extra=extra_serie) of = open(output_file, 'w') chart.buildhtml() of.write(chart.htmlcontent) of.close()
def testgraphic(request): if request.POST: type = 'lineChart' chart = lineChart(name=type, x_is_date=False) # xdata = range(100) ydata = [x ** 3 + 234 for x in range(100)] chart.add_serie(y=ydata,x=xdata,name='sas') # chartdata = {'x': xdata, 'y': ydata} # charttype = "lineChart" # chartcontainer = 'piechart_container' # data = { # 'charttype': charttype, # 'chartdata': chartdata, # 'chartcontainer': chartcontainer, # 'extra': { # 'x_is_date': False, # 'x_axis_format': '', # 'tag_script_js': True, # 'jquery_on_ready': False, # } # } return HttpResponse(chart.htmlcontent)
def hello(): input_data = list(csv.reader(open('dateCrimeOutput.txt', 'rb'), delimiter='\t')) chart = lineChart(name="lineChart", x_is_date=False, height=800, width=1800, margin_bottom=200, margin_top=40, margin_left=60, margin_right=60) crimes = [] for row in input_data: crimes.append([row[0], row[1], int(row[2])]) crimes = sorted(crimes, key=lambda crimes: ([crimes[0],crimes[1]])) xdata = [] current_crime = None i = 0 for crime in crimes: if str(crime[0]) == current_crime: xdata.append(crime[1]) globals()['ydata%s' % i].append(crime[2]) else: current_crime = crime[0] i = i+1 globals()['name%s' % i] = str(crime[0]) globals()['ydata%s' % i] = [] xdata.append(str(crime[1])) globals()['ydata%s' % i].append(crime[2]) kwargs1 = {'shape': 'circle', 'size': '20'} # kwargs2 = {'shape': 'cross', 'size': '4'} i = 1 while True: try: chart.add_serie(name=globals()['name%s' % i], y=globals()['ydata%s' % i], x=xdata, **kwargs1) i = i + 1 except: break chart.buildhtml() print chart.htmlcontent return chart.htmlcontent
def test_chartWithBadName(self): name = "Chart with spaces" chart = lineChart(name=name, date=True, height=350) chart.buildhtml() assert (" " not in chart.name) assert ("spaces" in chart.name)
def make_graphs(tag_name, values=False, tofile=False): import sqlite3 as sql # import matplotlib.pyplot as p # from bokeh.plotting import figure, output_file, show from datetime import date from nvd3 import lineChart import time ch_name = change_name(tag_name) connection = sql.connect("db\\tagstats.db") c = connection.cursor() base = '''SELECT alles,nodes,ways,relations,used_by,data FROM "{0}" ORDER BY data ASC''' key_db = c.execute(base.format(ch_name)).fetchall() # list of tuple [(1,2,3), (1,2,3) ] alles = [] n = [] w = [] r = [] u = [] d = [] value_list = [] for i in key_db: alles.append(i[0]) n.append(i[1]) w.append(i[2]) r.append(i[3]) u.append(i[4]) d_n = str(i[5]) d_r = int(d_n[:4]) d_m = int(d_n[4:6]) d_d = int(d_n[6:]) # d_str = "{0}-{1}-{2}".format(d_n[:4], d_n[4:6], d_n[6:]) # d.append(d_str) # print(d_str) data_obj = date(d_r, d_m, d_d) new_d = time.mktime(data_obj.timetuple()) * 1000 d.append(new_d) # d.append(i[5]) # d.append("{0},{1},{2}".format(d_n[:4], d_n[4:6], d_n[6:])) chart = lineChart(name=ch_name, height="400", width="800", x_is_date=True, x_axis_format="%d-%m", use_interactive_guideline=True) chart.add_serie(x=d, y=alles, name="All") chart.add_serie(x=d, y=n, name="Nodes") chart.add_serie(x=d, y=w, name="Ways") chart.add_serie(x=d, y=r, name="Relations") chart.add_serie(x=d, y=u, name="Users used") # chart.create_x_axis( # name=x_Axis, label="Data", date=True, format="%Y%m%d") if tofile == True: out_f = open("{0}.html".format(ch_name), 'w') chart.buildhtml() out_f.write(chart.htmlcontent) out_f.close() else: chart.buildcontent() tag_data = chart.htmlcontent # make_graphs("area:highway") connection.close() if values == True: # make_graphs("area:highway",True) connection = sql.connect("db\\tagstats_values.db") c = connection.cursor() distinct = '''SELECT DISTINCT value FROM "{0}"''' dist_db = c.execute(distinct.format(ch_name)).fetchall() for i in dist_db: # clear tables alles.clear() n.clear() w.clear() r.clear() d.clear() vals = '''SELECT alles,nodes,ways,relations,data FROM "{0}" WHERE value="{1}" ORDER BY data ASC''' value_name = i[0] val_db = c.execute(vals.format(ch_name, value_name)).fetchall() for i in val_db: alles.append(i[0]) n.append(i[1]) w.append(i[2]) r.append(i[3]) d_n = str(i[4]) d_r = int(d_n[:4]) d_m = int(d_n[4:6]) d_d = int(d_n[6:]) data_obj = date(d_r, d_m, d_d) new_d = time.mktime(data_obj.timetuple()) * 1000 d.append(new_d) # change this shit...it will makes problems with file names chart_name = ch_name + "-" + value_name chart = lineChart(name=chart_name, height="400", width="800", x_is_date=True, x_axis_format="%d-%m", use_interactive_guideline=True) chart.add_serie(x=d, y=alles, name="All") chart.add_serie(x=d, y=n, name="Nodes") chart.add_serie(x=d, y=w, name="Ways") chart.add_serie(x=d, y=r, name="Relations") if tofile == True: out_f = open("{0}.html".format(chart_name), 'w') chart.buildhtml() out_f.write(chart.htmlcontent) out_f.close() else: # val_div = chart.buildcontainer() # val_js = chart.buildjschart() chart.buildcontent() val_data = chart.htmlcontent sm_dict = {"name": value_name, "graph": val_data} value_list.append(sm_dict) connection.close() # print(values) # print(value_list) return (tag_name, values, tag_data, value_list, ch_name)
""" Examples for Python-nvd3 is a Python wrapper for NVD3 graph library. NVD3 is an attempt to build re-usable charts and chart components for d3.js without taking away the power that d3.js gives you. Project location : https://github.com/areski/python-nvd3 """ from nvd3 import lineChart import math #Open File for test output_file = open('test_lineChart.html', 'w') #--------------------------------------- type = "lineChart" chart = lineChart(name=type, date=False, height='100%') xdata = [] ydata = [] ydata2 = [] for i in range(0, 101): xdata.append(i) x = i * 0.1 ydata.append(math.sin(math.pi * x)) ydata2.append(0.5 * math.cos(math.pi * x)) kwargs1 = {'color': 'black'} kwargs2 = {'color': 'red'} extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " calls"}} chart.add_serie(y=ydata, x=xdata, name='sine', extra=extra_serie, **kwargs1)
# print humidity cur = c.cursor() cur.execute("SELECT hum from data") hum = cur.fetchall() print hum # print unixtime cur = c.cursor() cur.execute("SELECT ut from data") ut = cur.fetchall() print ut # Open File to write the D3 Graph output_file = open('html/index.html', 'w') chart = lineChart(name="lineChart", x_is_date=False, x_axis_format="AM_PM") xdata = range(24) ydata = [ 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25 ] ydata2 = [ 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18 ] extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}} chart.add_serie( y=ydata, x=xdata,
width=400, jquery_on_ready=True) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") color_list = ['orange', 'yellow', '#C5E946', '#95b43f', 'red', '#FF2259', '#F6A641'] extra_serie = {"tooltip": {"y_start": "", "y_end": " cal"}, "color_list": color_list} xdata = ["Orange", "Banana", "Pear", "Kiwi", "Apple", "Strawberry", "Pineapple"] ydata = [3, 4, 2, 1, 5, 7, 3] chart.add_serie(y=ydata, x=xdata, extra=extra_serie) chart.buildcontent() output_file.write(chart.htmlcontent) # --------------------------------------- name = "lineChart-different-x-axis" type = "lineChart" chart = lineChart(name=name, height=400, width=800, x_is_date=False, jquery_on_ready=True) chart.set_containerheader("\n\n<h2>" + name + "</h2>\n\n") xdata = [1 + x * 2 for x in list(range(nb_element))] xdata10 = [0 + x * 2 for x in list(range(nb_element))] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] #Configure a color for a specific serie kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " odd"}} chart.add_serie(name="Odd X-Axis", y=ydata, x=xdata, extra=extra_serie, **kwargs1) extra_serie = {"tooltip": {"y_start": "", "y_end": " even"}} chart.add_serie(name="Even X-Axis", y=ydata2, x=xdata10, extra=extra_serie, **kwargs2)
def index_chart(request): """ lineChart page """ today = datetime.date.today() year = today.year stock_list = HmChart.objects.filter(chart_in_hm_choices=u'STOCK', chart_time__year=year) xdata = [ int(calendar.timegm(t.chart_time.timetuple())) * 1000 for t in stock_list ] ydata = [float("%.2f" % v.chart_value) for v in stock_list] chart = lineChart(name='lineChart', container='lineChart', height=400, width=400, x_is_date=True, x_axis_format="%d %b %Y") #xdata = [1365026400000000, 1365026500000000, 1365026600000000] #ydata = [-6, 5, -1] #tooltip_str = "'<center><b>'+key+'</b></center>' + y + ' 增长 ' + x;" extra_serie = { "tooltip": { "y_start": "净值", "y_end": "" }, "date_format": "%Y年%m月%d日", #"tooltip_str": tooltip_str, } chart.add_serie( name=u"股票净值", y=ydata, x=xdata, extra=extra_serie, ) chart.buildhtml() chart_html = chart.jschart #-------------------------------------------------------------- chart2 = lineChart(name='lineChart2', container='lineChart2', height=400, width=400, x_is_date=True, x_axis_format="%d %b %Y") fund_list = HmChart.objects.filter(chart_in_hm_choices=u'FUND', chart_time__year=year) xdata2 = [ int(calendar.timegm(t.chart_time.timetuple())) * 1000 for t in fund_list ] ydata2 = [float("%.2f" % v.chart_value) for v in fund_list] #xdata2 = [1365988400000000, 1365026500000000, 1365026600000000] #ydata2 = [8, 5, 3] extra_serie2 = { "tooltip": { "y_start": "净值", "y_end": "" }, "date_format": "%Y年%m月%d日" } chart2.add_serie(name=u"期货净值", y=ydata2, x=xdata2, extra=extra_serie2) chart2.buildhtml() chart_html2 = chart2.jschart adimg = HmadManager.objects.all() return chart_html, chart_html2
"color_list": color_list } xdata = [ "Orange", "Banana", "Pear", "Kiwi", "Apple", "Strawberry", "Pineapple" ] ydata = [3, 4, 2, 1, 5, 7, 3] chart.add_serie(y=ydata, x=xdata, extra=extra_serie) chart.buildcontent() output_file.write(chart.htmlcontent) #--------------------------------------- type = "lineChart" chart = lineChart(name=type, height=350, date=True, x_axis_format="%d %b %Y %H", jquery_on_ready=True) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") xdata = list(range(nb_element)) xdata = [start_time + x * 1000000000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] #Configure a color for a specific serie kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = { "tooltip": {
type = "pieChart" chart = pieChart(name=type, color_category='category20c', height=400, width=400) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") color_list = ['orange', 'yellow', '#C5E946', '#95b43f', 'red', '#FF2259', '#F6A641'] extra_serie = {"tooltip": {"y_start": "", "y_end": " cal"}, "color_list": color_list} xdata = ["Orange", "Banana", "Pear", "Kiwi", "Apple", "Strawberry", "Pineapple"] ydata = [3, 4, 2, 1, 5, 7, 3] chart.add_serie(y=ydata, x=xdata, extra=extra_serie) chart.buildhtml() output_file.write(chart.htmlcontent) #--------------------------------------- type = "lineChart" chart = lineChart(name=type, height=350, date=True, x_axis_date_format="%d %b %Y %H") chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") xdata = list(range(nb_element)) xdata = [start_time + x * 1000000000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] #Configure a color for a specific serie kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = {"tooltip": {"y_start": "There is ", "y_end": " calls"}, "date_format": "%d %b %Y %I:%M:%S %p"} chart.add_serie(name="Count", y=ydata, x=xdata, extra=extra_serie, **kwargs1) extra_serie = {"tooltip": {"y_start": "", "y_end": " min"}} chart.add_serie(name="Duration", y=ydata2, x=xdata, extra=extra_serie, **kwargs2)
NVD3 is an attempt to build re-usable charts and chart components for d3.js without taking away the power that d3.js gives you. Project location : https://github.com/areski/python-nvd3 """ from nvd3 import lineChart import math from numpy import sin, pi, linspace output_file = open('test_lineChartXY.html', 'w') chart = lineChart(name="lineChart", date=False, x_format="f", y_format="f", width=500, height=500, show_legend=False) #lissajous parameters of a/b a = [1, 3, 5, 3] b = [1, 5, 7, 4] delta = pi / 2 t = linspace(-pi, pi, 300) for i in range(0, 4): x = sin(a[i] * t + delta) y = sin(b[i] * t) chart.add_serie(y=y,
import pandas as pd import nvd3 from IPython.display import Image from IPython.core.display import display, HTML from nvd3 import lineChart # df = pd.read_excel(r"lg_apple.xlsx") df = pd.DataFrame(df) # output_file = open('apple.html', 'w') chart = lineChart(width=1000, name="lineChart", x_is_date=False, x_axis_format=None) # xdata = df['features'] y1 = df['SVM_7'] y2 = df['SVM_37'] y3 = df['NN_7'] y4 = df['NN_37'] # extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}} chart.add_serie(y=y1, x=xdata, name='SVM 7 years', extra=extra_serie) extra_serie = {"tooltip": {"y_start": "", "y_end": " min"}} chart.add_serie(y=y2, x=xdata, name='SVM 37 years', extra=extra_serie) extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}} chart.add_serie(y=y3, x=xdata, name='Neural Network 7 years', extra=extra_serie) extra_serie = {"tooltip": {"y_start": "There are ", "y_end": " calls"}}
NVD3 is an attempt to build re-usable charts and chart components for d3.js without taking away the power that d3.js gives you. Project location : https://github.com/areski/python-nvd3 """ from nvd3 import lineChart from numpy import sin, pi, linspace output_file = open('test_lineChartXY.html', 'w') type = "lineChart" chart = lineChart(name=type, x_is_date=False, x_axis_format=".1f", y_axis_format=".1f", width=500, height=500, show_legend=False) #lissajous parameters of a/b a = [1, 3, 5, 3] b = [1, 5, 7, 4] delta = pi / 2 t = linspace(-pi, pi, 300) for i in range(0, 4): x = sin(a[i] * t + delta) y = sin(b[i] * t) chart.add_serie(y=y, x=x,
""" Examples for Python-nvd3 is a Python wrapper for NVD3 graph library. NVD3 is an attempt to build re-usable charts and chart components for d3.js without taking away the power that d3.js gives you. Project location : https://github.com/areski/python-nvd3 """ from nvd3 import lineChart import math #Open File for test output_file = open('test_lineChart.html', 'w') #--------------------------------------- type = "lineChart" chart = lineChart(name=type, date=False, x_axis_format="AM_PM") xdata = [] ydata = [] ydata2 = [] ydata = [ 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 4, 3, 3, 5, 7, 5, 3, 16, 6, 9, 15, 4, 12 ] ydata2 = [ 9, 8, 11, 8, 3, 7, 10, 8, 6, 6, 9, 6, 5, 4, 3, 10, 0, 6, 3, 1, 0, 0, 0, 1 ] #ydata3 = [0, 0, 1, 1, 0, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0] for i in range(0, 24): xdata.append(i)
from nvd3 import lineWithFocusChart from nvd3 import stackedAreaChart #TODO: demo_all.py should have an example for all charts from nvd3 import multiBarHorizontalChart from nvd3 import linePlusBarChart from nvd3 import cumulativeLineChart import random import datetime import time #Open File for test output_file = open('test.html', 'w') #--------------------------------------- type = "lineChart" chart = lineChart(name=type, date=True, height=350) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") start_time = int(time.mktime(datetime.datetime(2012, 6, 1).timetuple()) * 1000) nb_element = 100 xdata = range(nb_element) xdata = map(lambda x: start_time + x * 1000000000, xdata) ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = map(lambda x: x * 2, ydata) chart.add_serie(y=ydata, x=xdata) chart.add_serie(y=ydata2, x=xdata) chart.buildhtml() output_file.write(chart.htmlcontent)
}, "color_list": color_list } xdata = [ "Orange", "Banana", "Pear", "Kiwi", "Apple", "Strawberry", "Pineapple" ] ydata = [3, 4, 2, 1, 5, 7, 3] chart.add_serie(y=ydata, x=xdata, extra=extra_serie) chart.buildcontent() output_file.write(chart.htmlcontent) #--------------------------------------- type = "lineChart" chart = lineChart(height=350, x_is_date=True, x_axis_format="%d %b %Y %H", jquery_on_ready=True) chart.set_containerheader("\n\n<h2>" + type + "</h2>\n\n") xdata = list(range(nb_element)) xdata = [start_time + x * 1000000000 for x in xdata] ydata = [i + random.randint(1, 10) for i in range(nb_element)] ydata2 = [x * 2 for x in ydata] #Configure a color for a specific serie kwargs1 = {'color': 'green'} kwargs2 = {'color': 'red'} extra_serie = { "tooltip": { "y_start": "There is ",
def draw(handle, workload): x_data = range(0, len(workload)) chart = lineChart(name="lineChart", width=1000, height=500) chart.add_serie(y=workload, x=x_data, name='Workload') chart.buildhtml() handle.write(str(chart))