Ejemplo n.º 1
0
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()
Ejemplo n.º 3
0
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
Ejemplo n.º 4
0
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()
Ejemplo n.º 5
0
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)
Ejemplo n.º 6
0
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()
Ejemplo n.º 8
0
    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()
Ejemplo n.º 9
0
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()
Ejemplo n.º 11
0
	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()
Ejemplo n.º 12
0
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()
Ejemplo n.º 13
0
    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()
Ejemplo n.º 15
0
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()
Ejemplo n.º 16
0
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()
Ejemplo n.º 17
0
    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()
Ejemplo n.º 18
0
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()
Ejemplo n.º 19
0
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()
Ejemplo n.º 20
0
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
Ejemplo n.º 22
0
 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()
Ejemplo n.º 23
0
 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()
Ejemplo n.º 24
0
    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])
Ejemplo n.º 25
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()
Ejemplo n.º 26
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()
Ejemplo n.º 27
0
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
Ejemplo n.º 28
0
 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
Ejemplo n.º 29
0
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
Ejemplo n.º 30
0
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)
Ejemplo n.º 31
0
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()
Ejemplo n.º 32
0
    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()
Ejemplo n.º 35
0
    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()
Ejemplo n.º 36
0
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)
Ejemplo n.º 37
0
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)
Ejemplo n.º 38
0
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()
Ejemplo n.º 39
0
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
Ejemplo n.º 41
0
 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)
Ejemplo n.º 42
0
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)
Ejemplo n.º 43
0
"""
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)
Ejemplo n.º 44
0
# 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)
Ejemplo n.º 46
0
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
Ejemplo n.º 47
0
    "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": {
Ejemplo n.º 48
0
    "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": {
Ejemplo n.º 49
0
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)
Ejemplo n.º 50
0
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,
Ejemplo n.º 53
0
"""
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)
Ejemplo n.º 54
0
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)
Ejemplo n.º 55
0
    },
    "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 ",
Ejemplo n.º 56
0
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))