Exemplo n.º 1
0
def create_bar_timeline_response(timeline, x_values, y_values_list):
    """
	创建带时间轴柱状图数据的response
	@param x_values 柱状图中x轴的所有类别名称
		例如[['2010-10-10', '2010-10-11', '2010-10-12'],['2010-10-10', '2010-10-11', '2010-10-12']]
		又例如['总订单量', '未支付订单量', '支付订单量']
	@param y_values_list 柱状图中要显示的所有类别的值序列列表
		例如:
		[[{
			"name": "上个月",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "这个月",
			"values" : [60, 70, 80, 100]
		}],[{
			"name": "上个月",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "这个月",
			"values" : [60, 70, 80, 100]
		}]]
	"""

    options = []
    for i in range(len(x_values)):
        bar_charts_jsondata = myecharts.create_bar_chart_option(
            x_values[i], y_values_list[i])
        options.append(bar_charts_jsondata)

    response = create_response(200)
    response.data.options = options
    response.data.timeline = timeline

    return response.get_response()
Exemplo n.º 2
0
def create_bar_chart_response(x_values,
                              y_values_list,
                              reverse=False,
                              show_legend=True):
    """
	创建柱状图数据的response
	@param x_values 柱状图中x轴的所有类别名称
		例如['2010-10-10', '2010-10-11', '2010-10-12']
		又例如['总订单量', '未支付订单量', '支付订单量']
	@param y_values_list 柱状图中要显示的所有类别的值序列列表
		例如:
		[{
			"name": "上个月",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "这个月",
			"values" : [60, 70, 80, 100]
		}]
	"""

    bar_charts_jsondata = myecharts.create_bar_chart_option(
        x_values, y_values_list, reverse, show_legend)

    response = create_response(200)
    response.data = bar_charts_jsondata

    return response.get_response()
Exemplo n.º 3
0
def create_line_chart_response(x_unit_label,
                               y_unit_label,
                               x_values,
                               y_values_list,
                               color_list=None,
                               use_double_y_lable=False,
                               get_json=False):
    """
	创建折线图数据的response
	@param x_unit_label 折线图中x轴显示的单位名称
		例如"个",如果不需要单位可指定为""
	@param y_unit_label 折线图中y轴显示的单位名称
		例如"个",如果不需要单位可指定为""
	@param x_values 折线图中x轴的所有坐标点
		例如['2010-10-10', '2010-10-11', '2010-10-12']
	@param y_values_list 折线图中要显示的所有线的所有y轴的值序列
		例如:
		[{
			"name": "iphone",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "小米",
			"values" : [60, 70, 80, 100]
		}]
	"""

    map_charts_jsondata = myecharts.create_line_chart_option(
        x_unit_label, y_unit_label, x_values, y_values_list, color_list,
        use_double_y_lable)
    if get_json:
        return map_charts_jsondata
    response = create_response(200)
    response.data = map_charts_jsondata

    return response.get_response()
Exemplo n.º 4
0
def create_map_chart_response(title, name_2_values_list):
    """
	创建地图数据的response
	@title 地图的标题,如果不需要设置为""
	@param name_2_values 地图中所有项的名称和数值

	例如:
	[{
		"name": "iphone",
		"values" : [
			{'北京': 100000},
			{'上海': 10000},
			{'广州': 20000},
		]
	}, {
		"name" : "小米",
		"values" : [
			{'北京': 100000},
			{'上海': 10000},
			{'广州': 20000},
		]
	}]
	"""

    map_charts_jsondata = myecharts.create_map_char_option(
        title, name_2_values_list)

    response = create_response(200)
    response.data = map_charts_jsondata

    return response.get_response()
Exemplo n.º 5
0
def create_pie_chart_response(title, name_2_values, tooltip=None):
    """
	创建饼图数据的response
	@title 饼图的标题, 如果不需要设置为""
	@param name_2_values 饼图中所有项的名称和数值

	例如:
	{"微众":90, "微盟":4, "时趣":5, "其它":1}
	"""

    pie_charts_jsondata = myecharts.create_pie_chart_option(
        title, name_2_values, tooltip)

    response = create_response(200)
    response.data = pie_charts_jsondata

    return response.get_response()
Exemplo n.º 6
0
def create_table_response(column_names,
                          data_lines,
                          pageinfo=None,
                          sortAttr=None):
    """
	创建表格数据的response
	@param column_names 表格列的描述
		例如:
		[{
			"name": "date",
			"title": "日期",
		}, {
			"name": "url",
			"title": "访问地址",
		}, {
			"name": "user",
			"title": "用户",
		}]
	@param data_lines 所有行的数据
		例如:
		[
			['2014-10-17', '/app/demo', '用户1'],
			['2014-10-18', '/app/demo', '用户2'],
			['2014-10-19', '/app/demo', '用户2'],
			['2014-10-19', '/app/demo', '用户1'],
			['2014-10-20', '/app/demo', '用户1'],
		]
	"""

    response_data = {}
    response_data['cols'] = column_names
    response_data['lines'] = data_lines
    response_data['pageinfo'] = pageinfo
    response_data['sortAttr'] = sortAttr

    response = create_response(200)
    response.data = response_data

    return response.get_response()
Exemplo n.º 7
0
def create_line_timeline_chart_response(timeline, x_unit_label, y_unit_label,
                                        x_values, y_values_list):
    """
	创建带时间轴折线图数据的response
	@param x_unit_label 折线图中x轴显示的单位名称
		例如"个",如果不需要单位可指定为""
	@param y_unit_label 折线图中y轴显示的单位名称
		例如"个",如果不需要单位可指定为""
	@param x_values 折线图中x轴的所有坐标点
		例如[['2010-10-10', '2010-10-11', '2010-10-12'], ['2010-10-10', '2010-10-11', '2010-10-12']]
	@param y_values_list 折线图中要显示的所有线的所有y轴的值序列
		例如:
		[[{
			"name": "iphone",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "小米",
			"values" : [60, 70, 80, 100]
		}], [{
			"name": "iphone",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "小米",
			"values" : [60, 70, 80, 100]
		}]]
	"""
    options = []
    for i in range(len(x_values)):
        map_charts_jsondata = myecharts.create_line_chart_option(
            x_unit_label, y_unit_label, x_values[i], y_values_list[i])
        options.append(map_charts_jsondata)
    response = create_response(200)
    response.data.options = options
    response.data.timeline = timeline

    return response.get_response()
Exemplo n.º 8
0
def create_table_line_chart_response(table_data, line_data):
    """
	表格的数据格式table_data
		例如:
		{
			column_names: [],
			data_lines: [],
			pageinfo: None,
			sortAttr: None
	
		}
	@param column_names 表格列的描述
		例如:
		[{
			"name": "date",
			"title": "日期",
		}, {
			"name": "url",
			"title": "访问地址",
		}, {
			"name": "user",
			"title": "用户",
		}]
	@param data_lines 所有行的数据
		例如:
		[
			['2014-10-17', '/app/demo', '用户1'],
			['2014-10-18', '/app/demo', '用户2'],
			['2014-10-19', '/app/demo', '用户2'],
			['2014-10-19', '/app/demo', '用户1'],
			['2014-10-20', '/app/demo', '用户1'],
		]
		
		
	与之关联的折线图的数据line_data
		例如:
		{
			x_unit_label: '',
			y_unit_label: '',
			x_values: [],
			y_values_list: []
		}
	@param x_unit_label 折线图中x轴显示的单位名称
	例如"个",如果不需要单位可指定为""
	@param y_unit_label 折线图中y轴显示的单位名称
		例如"个",如果不需要单位可指定为""
	@param x_values 折线图中x轴的所有坐标点
		例如['2010-10-10', '2010-10-11', '2010-10-12']
	@param y_values_list 折线图中要显示的所有线的所有y轴的值序列
		例如:
		[{
			"name": "iphone",
			"values" : [50, 60, 80, 90]
		}, {
			"name" : "小米",
			"values" : [60, 70, 80, 100]
		}]
	"""

    response_table_data = {}
    response_table_data['cols'] = table_data['column_names']
    response_table_data['lines'] = table_data['data_lines']
    response_table_data['pageinfo'] = table_data['pageinfo']
    response_table_data['sortAttr'] = table_data['sortAttr']

    line_charts_jsondata = myecharts.create_line_chart_option(
        line_data['x_unit_label'], line_data['y_unit_label'],
        line_data['x_values'], line_data['y_values_list'])
    pic_data = {}
    pic_data['type'] = 'line'
    pic_data['data'] = line_charts_jsondata

    response = create_response(200)
    data = {}
    data['table_data'] = response_table_data
    data['pic_data'] = pic_data
    response.data = data

    return response.get_response()