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()
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()
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()
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()
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()
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()
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()
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()