Esempio n. 1
0
def index_bar():
    df = pd.read_csv('./static/data/average_salary.csv',
                     index_col=0,
                     error_bad_lines=False)
    tl = Timeline()
    for i in range(2013, 2019):
        map0 = (Map().add(
            "average_salary",
            list(zip(list(df.index), list(df["{}".format(i)]))),
            "china",
            is_map_symbol_show=False).set_series_opts(
                label_opts=opts.LabelOpts(is_show=False)).set_global_opts(
                    title_opts=opts.TitleOpts(
                        title="{}年平均工资".format(i),
                        subtitle="",
                        subtitle_textstyle_opts=opts.TextStyleOpts(
                            color="red", font_size=18, font_style="italic")),
                    visualmap_opts=opts.VisualMapOpts(min_=20000, max_=100000),
                ))
        tl.add(map0, "{}".format(i))
    return render_template(
        'index.html',
        myechart=tl.render_embed(),
        text=''' 分析2013年到2018年人们生活水平的变化''',
        text1='''首先从地图轮播的图表来看,北京和上海始终处于高收入的地区,而西藏从2015年开始有非常明显的提升。
                        到了2017年,我国各地的平均年收入基本达到了六万左右,并且逐年递增。''')
Esempio n. 2
0
def draw_account(trader_name):
    df_account = get_account(trader_name=trader_name)
    df_position = get_position(trader_name=trader_name)

    xdata = [to_time_str(timestamp) for timestamp in df_account.index]
    ydata = df_account.loc[:, 'all_value'].values.tolist()

    line = (Line().add_xaxis(xdata).add_yaxis("市值曲线", ydata).set_global_opts(
        title_opts=opts.TitleOpts(title="Grid-Line", pos_top="48%"),
        legend_opts=opts.LegendOpts(pos_top="48%"),
    ))

    time_line = Timeline()
    for timestamp in df_position.index:
        positions = zip(
            df_position.loc[timestamp, ['security_id']].values.tolist(),
            df_position.loc[timestamp, ['value']].values.tolist())
        security_positions = [(x[0], y[0]) for x, y in positions]
        print(security_positions)
        pie = Pie().add("持仓", security_positions)
        time_line.add(pie, to_time_str(timestamp))

    page = Page()
    page.add(line, time_line)

    return page
Esempio n. 3
0
def index_bar_every_1_tp():
    df = pd.read_csv("./static/data/lvyou.csv")
    df2 = pd.read_csv("./static/data/gdp.csv")

    x = list(df.地区)
    tl = Timeline()
    for i in range(2013, 2018):
        bar = (
            Bar()
                .add_xaxis(x)
                .add_yaxis("世界各地区旅游总收入", list(df["{}".format(i)]))
                .add_yaxis("世界各地区GDP总量", list(df2["{}".format(i)]))
                .reversal_axis()
                .set_global_opts(title_opts=opts.TitleOpts("{}年世界各地区旅游总收入与GDP总量对比".format(i)),
                                 datazoom_opts=opts.DataZoomOpts(orient="vertical"))
                .set_series_opts(
                label_opts=opts.LabelOpts(is_show=False),
            )
        )
        tl.add(bar, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           总体上看世界各地区旅游总收入是和与GDP总量成正比的,从图表数据看两者都有些增长,但增长有些波动总体上还是趋向平稳的
                           ''')
Esempio n. 4
0
def gauge1() -> Timeline:
    timeline3 = Timeline(init_opts=opts.InitOpts(
        width="270px", height="180px", bg_color="black"))
    for i in range(len(Grid)):
        b = batteryenergy[i] / 900 * 100

        gauge0 = (Gauge(init_opts=opts.InitOpts(
            width="270px", height="180px", bg_color="black")).add(
                series_name="grid",
                data_pair=[["", round(b, 1)]],
                max_=100,
                min_=0,
                start_angle=210,
                split_number=5,
                end_angle=-30,
                axisline_opts=opts.AxisLineOpts(
                    linestyle_opts=opts.LineStyleOpts(color=[(
                        0.3, "#67e0e3"), (0.7, "#37a2da"), (1, "#fd666d")],
                                                      width=20)),
                detail_label_opts=opts.LabelOpts(formatter="{value}%",
                                                 font_size=12),
                radius="80%").set_global_opts(
                    legend_opts=opts.LegendOpts(is_show=False),
                    tooltip_opts=opts.TooltipOpts(
                        is_show=True, formatter="{a} <br/>{b} : {c}%"),
                    title_opts=opts.TitleOpts(
                        "Percentage of battery energy at time {}".format(
                            time[i]),
                        title_textstyle_opts=opts.TextStyleOpts(
                            color="white", font_size=10.5))))
        timeline3.add(gauge0, "{}年".format(i)).add_schema(
            is_timeline_show=True).add_schema(play_interval=2000,
                                              is_auto_play=True,
                                              is_timeline_show=False)
    return timeline3
Esempio n. 5
0
def index_bar_every_4():
    prevention = request.args.get("city")

    df5 = pd.read_csv(r'./static/data/lvyou.csv')
    tl = Timeline()
    for i in range(2013, 2018):
        map0 = (
            Map()
                .add(
                "", list(zip(list(df5.地区.unique()), list(df5["{}".format(i)]))), "world", is_map_symbol_show=False
            )
                .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
                .set_global_opts(
                title_opts=opts.TitleOpts(title="{}年世界各地区旅游总收入".format(i), subtitle="",
                                          subtitle_textstyle_opts=opts.TextStyleOpts(color="black", font_size=16,
                                                                                     font_style="italic")),
                visualmap_opts=opts.VisualMapOpts(max_=70000000000),

            )
        )
        tl.add(map0, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           从上面图的走势,我们可以看出,世界各地区旅游总收入较多的国家分别是United States、France、Germany、China等国家。
                          ''')
Esempio n. 6
0
def index_bar_every_4():
    df = pd.read_csv("./static/data/wuhai.csv")
    tl = Timeline()
    for i in range(2009, 2018):
        map0 = (Map().add("垃圾无害化清理率(单位:百分比)",
                          list(zip(list(df.地区), list(df["{}".format(i)]))),
                          "china",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}各省垃圾无害化清理率".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(
                                  min_=min(list(df["{}".format(i)])),
                                  max_=max(list(df["{}".format(i)]))),
                          ))
        tl.add(map0, "{}".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           垃圾无害化处理的工艺主要有:卫生填埋、堆肥和焚烧三种。
                由垃圾无害化处理率地图可见,一开始,各省的处理率都十分不平均,高的高达97,低的低达29,西藏在2016年之前甚至没有数据。直到2016年后,全国的垃圾无害化处理都基本达到了90%。
                          ''',
                           text1='''我对影响垃圾无害化处理的因素的猜测如下:
                        1.高纬度的地方天气寒冷,卫生填埋在地下分解的时间很长,因此导致无害化处理的进度缓慢。
                        2.西藏等地区,并不进行农业,堆肥的无害化处理方式并不适合此些地区,也将导致其无法无害化处理垃圾
                        3.人口密度高的地区无法进行焚烧、填埋,因为人类生活用地面积就极大''')
Esempio n. 7
0
def index_bar_every():
    df = pd.read_csv("./static/data/renkou.csv")
    tl = Timeline()
    for i in range(2009, 2018):
        map0 = (Map().add("垃圾清运量(单位:万吨)",
                          list(zip(list(df.地区), list(df["{}".format(i)]))),
                          "china",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}各省垃圾清运量".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(
                                  min_=min(list(df["{}".format(i)])),
                                  max_=max(list(df["{}".format(i)]))),
                          ))
        tl.add(map0, "{}".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           由上可见,广东的垃圾清运量十分巨大,在2009-2018期间,广东的垃圾清运量始终是占比最高的。
                            除此之外,随着年份的增加,其他省份的垃圾清运量也在上升,如浙江、山东,已经从绿色变成了黄色
                           ''',
                           text1='''我对影响垃圾无害化处理的因素的猜测如下:
                        1.高纬度的地方天气寒冷,卫生填埋在地下分解的时间很长,因此导致无害化处理的进度缓慢。
                        2.西藏等地区,并不进行农业,堆肥的无害化处理方式并不适合此些地区,也将导致其无法无害化处理垃圾
                        3.人口密度高的地区无法进行焚烧、填埋,因为人类生活用地面积就极大''')
def timeline_sankey() -> Timeline:
    tl = Timeline()
    names = ("商家A", "商家B", "商家C")
    nodes = [{"name": name} for name in names]
    for i in range(2015, 2020):
        links = [
            {"source": names[0], "target": names[1], "value": Faker.values()[0]},
            {"source": names[1], "target": names[2], "value": Faker.values()[0]},
        ]
        sankey = (
            Sankey()
            .add(
                "sankey",
                nodes,
                links,
                linestyle_opt=opts.LineStyleOpts(
                    opacity=0.2, curve=0.5, color="source"
                ),
                label_opts=opts.LabelOpts(position="right"),
            )
            .set_global_opts(
                title_opts=opts.TitleOpts(title="{}年商店(A, B, C)营业额差".format(i))
            )
        )
        tl.add(sankey, "{}年".format(i))
    return tl
Esempio n. 9
0
 def setUp(self):
     bar0 = (Bar().add_xaxis(["a",
                              "b"]).add_yaxis("shop a", [1, 2]).add_yaxis(
                                  "shop b", [3, 4]).set_global_opts(
                                      title_opts=opts.TitleOpts("test"),
                                      visualmap_opts=opts.VisualMapOpts()))
     self.tl = Timeline().add(bar0, "year 2015")
Esempio n. 10
0
def get_wordcloud_line(words, frame_ids) -> Line:
    tl = Timeline()
    #print(words)
    '''
    words = [
    ("Sam S Club", 10000),
    ("Macys", 6181),
    ("Amy Schumer", 4386),
    ("Jurassic World", 4055),
    ("Charter Communications", 2467),
    ("Chick Fil A", 2244),
    ("Planet Fitness", 1868),
    ("Pitch Perfect", 1484),
    ("Express", 1112),
    ("Home", 865),
    ("Johnny Depp", 847),
    ("Lena Dunham", 582),
    ("Lewis Hamilton", 555),
    ("KXAN", 550),
    ("Mary Ellen Mark", 462),
    ("Farrah Abraham", 366),
    ("Rita Ora", 360),
    ("Serena Williams", 282),
    ("NCAA baseball tournament", 273),
    ("Point Break", 265),
    ]
    '''
    for i in frame_ids:
        wordcloud = (WordCloud().add("", words, word_size_range=[
            10, 100
        ]).set_global_opts(title_opts=opts.TitleOpts(title="事件链词云图")))
        tl.add(wordcloud, "{}帧".format(i))  #pycharts易展示,但不好交互
    return tl
Esempio n. 11
0
def wordY():
    df = pd.read_csv("./static/data/greens.csv")
    prevention = request.args.get("city1", "emissions")
    tl = Timeline()
    for i in range(2014, 2018):
        map0 = (Map().add("城市绿化覆盖率",
                          list(
                              zip(list(df.province),
                                  list(df["{}年".format(i)]))),
                          "china",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}年城市绿化覆盖率".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(min_=30,
                                                                max_=50)))
        tl.add(map0, "{}年".format(i))
    return render_template(
        'index.html',
        myechart=tl.render_embed(),
        text='''
                               总体上2014年到2017年各省份的城市绿化覆盖率在增加极少的经济欠发达省份如西藏的城市绿化覆盖率在这近四年减少''',
        text1=
        '''由各年份城市绿化覆盖率图可以知道,经济越发达的省份城市绿化程度更好,如青海、西藏、新疆等省份经济欠发达的省份城市绿化程度相对比较差
东部沿海省份城市的城市绿化覆盖率最高,例如山东、江苏、浙江、福建、广东等省份''')
Esempio n. 12
0
def index_bar():
    df = pd.read_csv("./static/data/country_females.csv")
    tl = Timeline()
    for i in range(2014, 2018):
        map0 = (Map().add("女性患病率",
                          list(zip(list(df.Country),
                                   list(df["{}".format(i)]))),
                          "world",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}年女性患病率".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(min_=10,
                                                                max_=20)))
        tl.add(map0, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           女性心理健康患病率在国家和地区间的分布大致同男性的差不多。
                           经济较发达的欧洲、美洲及大洋洲的心理健康患病率的比例较高
                           且四年间的变化趋势也趋于稳定,这与经济和社会发展水平有着密切联系,
                           随着社会医疗保障体系的完善,心理健康患病率正趋于稳定和下降趋势。''')
Esempio n. 13
0
def index_word():
    df = pd.read_csv("./static/data/country_males.csv")
    tl = Timeline()
    for i in range(2014, 2018):
        map0 = (Map().add("男性患病率",
                          list(zip(list(df.Country),
                                   list(df["{}".format(i)]))),
                          "world",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}年女性患病率".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(min_=10,
                                                                max_=20)))
        tl.add(map0, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           由地图可知2014年-2017年亚洲、俄罗斯及部门南美洲地区的男性心理健康患病率
                           比欧洲、美国、澳洲要低,由此可见发达国家和地区患心理健康疾病的比例也比欠
                           发达的国家和地区高。且四年间的变化率不大,相对于较稳定趋势。''')
Esempio n. 14
0
def timeline_map() -> Timeline:
    df = pd.read_csv("API_worldap2shijianzhou.csv")
    tl = Timeline()
    for i in range(2010, 2018):
        map0 = (
            Map()
                .add(
                "pm2.5浓度", list(zip(list(df.CountryName), list(df["{}".format(i)]))), "world", is_map_symbol_show=False
            )
                .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
                .set_global_opts(
                title_opts=opts.TitleOpts(title="2010-2017年世界空气污染程度".format(i),
                                          subtitle_textstyle_opts=opts.TextStyleOpts(color="red", font_size=10,
                                                                                     font_style="italic")),

                visualmap_opts=opts.VisualMapOpts(series_index=0, max_=99.73437372),

            )
        )
        tl.add(map0, "{}".format(i))
        map0.render("./templates/world_airp.html")
        with open("./templates/world_airp.html", encoding="utf8", mode="r") as f:
            sym = "".join(f.readlines())
            return render_template('result.html',
                                   the_sym=sym,
                                   )
Esempio n. 15
0
def finacial_education_map() -> Timeline:
    kd = Timeline()  #添加时间轴
    for i in range(
            2009, 2019
    ):  #选取时间段为2009-2018年,由于range(start, stop[, step]),所以是(2009,2019)
        map1 = (
            Map().add(
                "地方财政教育支出(亿元)",
                list(zip(list(df1.provinces), list(df1["{}".format(i)]))),
                "china",  #选取中国地图
                is_map_symbol_show=False).set_global_opts(
                    title_opts=opts.TitleOpts(
                        title='图1',
                        subtitle="{}各省财政教育支出".format(i),
                        subtitle_textstyle_opts=opts.TextStyleOpts(
                            color="black",
                            font_size=18,
                        )),
                    # 设置标题与副标题样式,进行图例说明
                    visualmap_opts=opts.VisualMapOpts(min_=df1["2009"].min(),
                                                      max_=df1["2018"].max(),
                                                      series_index=0),
                    #设置最大最小值
                ))
        kd.add(map1, "{}".format(i))
    return kd  #返回数据
Esempio n. 16
0
def index_bar_every_1():
    df = pd.read_csv('./static/data/renjunGDP.csv', index_col=0)
    df1 = pd.read_csv('./static/data/pinkunlv.csv', index_col=0)
    df2 = pd.read_csv('./static/data/pinkunrenkou.csv', index_col=0)
    tl = Timeline()
    for i in range(2010, 2018):
        map0 = (Map().add(
            "各国贫困率跟贫困人口的关系",
            [(city[i], j)
             for i, j in zip(list(df2.index), list(df1['{}年'.format(i)]))
             if city.get(i, None)],
            "world",
            is_map_symbol_show=False).set_global_opts(
                title_opts=opts.TitleOpts(
                    title="{}各国贫困率跟贫困人口的关系".format(i),
                    subtitle="",
                    subtitle_textstyle_opts=opts.TextStyleOpts(
                        color="red", font_size=18, font_style="italic")),
                visualmap_opts=opts.VisualMapOpts(min_=-1, max_=11.5),
            ))
        tl.add(map0, "{}年".format(i))
    return render_template(
        'index.html',
        myechart=tl.render_embed(),
        result=df.values.tolist(),
        a=1,
        data_x=df.columns.values.tolist()[1:],
        text1='''通过贫困率和贫困人口的两张地图对比可得,地图都有类似的点 两张地图颜色分布和变化趋势大致相同,
                           可以得出贫困率跟贫困人口相关。 两份数据图的中东地区数据是都偏大的随着年份的增加,变化都不是很大 我们还可以看出随着年份的增加,尽管全球总体贫困率有所下降,尤其是在中国和拉丁美洲的多数地区,
                           但非洲和部分亚洲地区的贫困率仍居高不下。
    通过各国人均GDP和贫困率的两张地图对比可得到: 人均GDP和贫困率有一定的关系,欧洲有些高收入国家贫困率的数据也不低,说明人均GDP与贫困率的关系不大,但是也有一定的关系。看人均GDP和贫困人口,不能全面衡量和比较国与国之间贫困率的差异贫富差距和社会保障
    ,是决定国家贫困率的另外两个重要因素。''')
Esempio n. 17
0
    def timeline_bar() -> Timeline:
        x = Reason
        tl = Timeline()
        for i in time:
            df2 = df[df.Year == int(i)]
            n1 = []
            n2 = []
            n3 = []
            n4 = []
            n5 = []         
            for a in Reason:
                df3 = df2[df2['Cause of Death'] == a]
                n1.append(sum(df2['Potentially Excess Deaths'][(df['State'] == 'United States')][(df['Cause of Death'] == 'Heart Disease')]))
                n2.append(sum(df2['Potentially Excess Deaths'][(df['State'] == 'United States')][(df['Cause of Death'] == 'Cancer')]))
                n3.append(sum(df2['Potentially Excess Deaths'][(df['State'] == 'United States')][(df['Cause of Death'] == 'Chronic Lower Respiratory Disease')]))
                n4.append(sum(df2['Potentially Excess Deaths'][(df['State'] == 'United States')][(df['Cause of Death'] == 'Stroke')]))
                n5.append(sum(df2['Potentially Excess Deaths'][(df['State'] == 'United States')][(df['Cause of Death'] == 'Unintentional Injury')]))
            bar = (
                Bar()
                    .add_xaxis(x)
                    .add_yaxis("Heart Disease", n1)
                    .add_yaxis("Cancer", n2)
                    .add_yaxis("Chronic Lower Respiratory Disease", n3)
                    .add_yaxis("Stroke", n4)
                    .add_yaxis("Unintentional Injury", n5)

                    .set_global_opts(title_opts=opts.TitleOpts("美国{}年药物中毒死亡人数".format(i)))
            )
            tl.add(bar, "{}年".format(i))
        return tl
Esempio n. 18
0
def Create_Combine(my_data, ave_data, exam_name, class_data, grade_data, Exam_Number):
    #历次排名对比
    tab = Tab()
    The_Line = Create_Line(class_data, grade_data)
    tab.add(The_Line, "历次排名")
	
    tab.add(table_base(), "参考上线排名")
	
    #不同考试成绩概况
    t1 = Timeline()
    for i in range(len(ave_data)):
        Now_Bar = Create_Bar(my_data[i], ave_data[i], exam_name[i], "你的成绩", "平均分", False)
        t1.add(Now_Bar, exam_name[i])
    tab.add(t1, "近段考试概况")
    
    #历次单科成绩对比
    for i in range(0, 6):
        clone_score = []
        for j in range(len(exam_name)):
            clone_score.append(my_data[j][i])
        clone_rank = []
        for j in range(len(exam_name)):
            clone_rank.append(All_Exam_RANK[j][i])
            
        tab.add(Create_Line_RANK(clone_score, clone_rank), Subject[i]+"走势")
    tab.render(str(Exam_Number)+"的综合分析.html")
Esempio n. 19
0
def score_map() -> Timeline:
    conn = mysql.connector.connect(**happiness)
    cursor = conn.cursor()
    SQL = "SELECT * FROM score"
    cursor.execute(SQL)
    u = cursor.fetchall()
    cols = cursor.description
    conn.commit()
    conn.close()
    col = []
    for i in cols:
        col.append(i[0])
    data = list(map(list, u))
    data = pd.DataFrame(data, columns=col)
    print(data)
    tl = Timeline()
    for i in range(2015, 2018):
        map0 = (
            Map()
                .add(
                "世界幸福分数", list(zip(list(data.country), list(data["score_{}".format(i)]))), "world", is_map_symbol_show=False
            )
                .set_global_opts(
                title_opts=opts.TitleOpts(title="{}年世界幸福分数".format(i), subtitle="",
                                          subtitle_textstyle_opts=opts.TextStyleOpts(color="red", font_size=18,
                                                                                     font_style="italic")),
                # 设置副标题样式,进行图例说明
                visualmap_opts=opts.VisualMapOpts(min_=data['score_2016'].min(), max_=data['score_2016'].max(), series_index=0),

            )
        )
        tl.add(map0, "{}".format(i))
    return tl
Esempio n. 20
0
def index_bar_every_1_tp():
    df = pd.read_csv("./static/data/GDP.csv")
    tl = Timeline()
    for i in range(2013, 2019):
        map0 = (
            Map()
                .add(
                "GDP生产值(单位:万亿)", list(zip(list(df.地区), list(df["{}年".format(i)]))), "china", is_map_symbol_show=False
            )
                .set_global_opts(
                title_opts=opts.TitleOpts(title="{}各省份GDP总值".format(i), subtitle="",
                                          subtitle_textstyle_opts=opts.TextStyleOpts(color="red", font_size=18,
                                                                                     font_style="italic")),
                visualmap_opts=opts.VisualMapOpts(min_=1000, max_=80000),

            )
        )
        tl.add(map0, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text='''
                           从上面的模型中,我们可以看出近五年来,东南沿海地区的GDP生产总值在国内是较高的
                            以2018年为例,广东,浙江,山东三地的数值都要超过了80000。而西北地区的数值是偏低的
                            以2018年为例,西藏,青海,宁夏三地的数值都要低于10000
                           ''')
Esempio n. 21
0
def index_bar_every():
    df1 = pd.read_csv("./static/data/dependency_ratio.csv", index_col="地区")
    tl = Timeline()
    for i in range(2014, 2019):
        map0 = (Map().add("抚养比",
                          list(zip(list(df1.index),
                                   list(df1["{}年".format(i)]))),
                          "china",
                          is_map_symbol_show=False).set_global_opts(
                              title_opts=opts.TitleOpts(
                                  title="{}抚养比".format(i),
                                  subtitle="",
                                  subtitle_textstyle_opts=opts.TextStyleOpts(
                                      color="red",
                                      font_size=18,
                                      font_style="italic")),
                              visualmap_opts=opts.VisualMapOpts(min_=23,
                                                                max_=51),
                          ))
        tl.add(map0, "{}年".format(i))
    return render_template('index.html',
                           myechart=tl.render_embed(),
                           text1='''
                            其实,从中国整体来看,抚养比基本都是在逐年上升的;
                            根据最新一年(2018年)的分省抚养比数据来看:
                            贵州、山东、及其附近的省份【集中在地图中心区域的省份】的抚养比也是相对较高的;
                            结合上一个图表,我们可以得出结论:中国分省离婚率的上涨和抚养比是有一定关系的【抚养比:劳动力的抚养负担】
                           ''')
def radar_product_rating_base():
    """
    此函数用于获取产品多维评价的雷达图的参数。

    Returns
    -------
    tl : TYPE-echarts parameters
        return echarts parameters.
    """
    
    # data query
    dataX, products, list_dataY = product_rating_query()
    c_schema = []
    for i in range(len(dataX)):
        c_schema.append({"name":dataX[i],"max":5,"min":0})
        
    # Declare objects, render pictures
    tl = Timeline()
    for i in range(len(products)):
        c = (
            Radar(init_opts=opts.InitOpts(width="1280px", height="720px"))
            .add_schema(schema=c_schema,
                        splitarea_opt=opts.SplitAreaOpts(is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)),
                        textstyle_opts=opts.TextStyleOpts(color="#fff"),
                        )
            .add(series_name=products[i], data=[list(list_dataY[i])], 
                 linestyle_opts=opts.LineStyleOpts(color="#CD0000"),
                 )
            .set_series_opts(label_opts=opts.LabelOpts(is_show=True))
            .set_global_opts(title_opts=opts.TitleOpts(title="Multi-dimensional analysis of product performance"),
                             legend_opts=opts.LegendOpts(pos_left="80%", pos_top="50%"))
        )
        tl.add(c, "{}".format(products[i]))
    return tl
Esempio n. 23
0
def bar_datazoom_inside() -> Timeline:
    tl = Timeline()
    for i in range(2014, 2020):
        c = (
            Bar(
            init_opts=opts.InitOpts(
                    animation_opts=opts.AnimationOpts(
                        animation_delay=1000, animation_easing="elasticOut"
                    )
                )
            )
            .add_xaxis(list(zip(list(data总.set_index('类别').index))))
            .add_yaxis("显示",list(data总["{}".format(i)]))
            .set_global_opts(
                title_opts=opts.TitleOpts(title="纵横小说月票榜"),
                datazoom_opts=opts.DataZoomOpts(type_="inside"),
                visualmap_opts=opts.VisualMapOpts(type_="color", max_=250000, min_=200,pos_right='20',pos_top='middle'),
                toolbox_opts=opts.ToolboxOpts(),
            )
            .set_series_opts(
            label_opts=opts.LabelOpts(is_show=False),
            markpoint_opts=opts.MarkPointOpts(
                data=[
                    opts.MarkPointItem(type_="max", name="最大值"),
                    opts.MarkPointItem(type_="min", name="最小值"),
                ]
            ),
        )
    )
        tl.add(c, "{}年".format(i))
    return tl
Esempio n. 24
0
def index_bar_every():
    df = pd.read_csv('./static/data/renjunGDP.csv')
    tl = Timeline()
    for i in range(2010, 2018):
        c = (Map().add(
            "世界地图",
            [(city[i], j)
             for i, j in zip(list(df['Country Name']), list(df['{}年'.format(
                 i)])) if city.get(i, None)],
            "world").set_series_opts(label_opts=opts.LabelOpts(
                is_show=False)).set_global_opts(
                    title_opts=opts.TitleOpts(title="{}各国人均GDP".format(i)),
                    visualmap_opts=opts.VisualMapOpts(max_=80),
                ))
        tl.add(c, "{}年".format(i))
    return render_template(
        'index.html',
        myechart=tl.render_embed(),
        result=df.values.tolist(),
        a=1,
        data_x=df.columns.values.tolist()[1:],
        text1='''通过贫困率和贫困人口的两张地图对比可得,地图都有类似的点 两张地图颜色分布和变化趋势大致相同,
                           可以得出贫困率跟贫困人口相关。 两份数据图的中东地区数据是都偏大的随着年份的增加,变化都不是很大 我们还可以看出随着年份的增加,尽管全球总体贫困率有所下降,尤其是在中国和拉丁美洲的多数地区,
                           但非洲和部分亚洲地区的贫困率仍居高不下。
    通过各国人均GDP和贫困率的两张地图对比可得到: 人均GDP和贫困率有一定的关系,欧洲有些高收入国家贫困率的数据也不低,
    说明人均GDP与贫困率的关系不大,但是也有一定的关系。看人均GDP和贫困人口,不能全面衡量和比较国与国之间贫困率的差异贫富差距和社会保障,是决定国家贫困率的另外两个重要因素。'''
    )
Esempio n. 25
0
def timeline_bar():
    x = Faker.choose()
    tl = Timeline()
    for i in range(2015, 2020):
        bar = (Bar().add_xaxis(x).add_yaxis("商家A", Faker.values()).add_yaxis(
            "商家B", Faker.values()).set_global_opts(
                title_opts=opts.TitleOpts("某商店{}年营业额".format(i))))
        tl.add(bar, "{}年".format(i))
    return tl
Esempio n. 26
0
def show_score_top():
    # 查找上映年份集合
    showtime = select_showtime()
    # 生成时间轴的图
    timeline = Timeline(
        init_opts=opts.InitOpts(page_title="豆瓣电影TOP250-评分TOP10的电影", ))
    for year in showtime:
        film_tuple = select_film(year)
        date_list = select_data(year)
        timeline.add_schema(is_auto_play=True, play_interval=1000)
        # 柱状图初始化
        bar = Bar()
        # 横坐标
        bar.add_xaxis(film_tuple[0])
        # 纵坐标
        bar.add_yaxis(
            "",
            date_list,
            # 数据靠右显示
            label_opts=opts.LabelOpts(is_show=True, position='right'))
        # 横纵坐标翻转
        bar.reversal_axis()
        # 全局配置
        bar.set_global_opts(
            # 标题
            title_opts=opts.TitleOpts(
                title="豆瓣电影TOP250-第{}年评分TOP10的电影".format(year),
                pos_left='center'),
            # 横坐标隐藏
            xaxis_opts=opts.AxisOpts(is_show=False,
                                     max_=select_film(year)[2],
                                     min_=(float(select_film(year)[3]) - 0.1),
                                     split_number=10),
            # 纵坐标
            yaxis_opts=opts.AxisOpts(
                max_=9,
                # 字体大小
                axislabel_opts=opts.LabelOpts(font_size=10),
                # 隐藏坐标轴
                axisline_opts=opts.AxisLineOpts(is_show=False),
                # 隐藏刻度
                axistick_opts=opts.AxisTickOpts(is_show=False)))
        # 组合组件
        grid = (Grid().add(bar,
                           grid_opts=opts.GridOpts(pos_top='8%',
                                                   pos_bottom='12%',
                                                   pos_left='25%')))
        timeline.add(grid, "{}年".format(year))
        timeline.add_schema(is_auto_play=True,
                            play_interval=1000,
                            is_loop_play=False,
                            width='820px',
                            pos_left='60px')
    # 生成HTML
    html = "pages/iframes/score_top.html"
    timeline.render("./templates/" + html)
    return html
Esempio n. 27
0
def create_grade_pie(grade_values) -> Timeline:
    tl = Timeline()
    sort_keys = '一二三四五六七八'
    grade_values = sorted(grade_values.groupby('grade'),
                          key=lambda x: sort_keys.index(x[0]))
    for g, v in grade_values:
        data = [tuple(n) for n in v.iloc[:, 1:].values]
        pie = create_pie(data, f'{g}年级科目占比')
        tl.add(pie, f'{g}年级')
    return tl
Esempio n. 28
0
def test_page_with_multi_axis():
    tl = Timeline()
    for i in range(2015, 2020):
        bar = (Bar().add_xaxis(Faker.choose()).add_yaxis(
            "商家A", Faker.values()).add_yaxis("商家B", Faker.values()))
        tl.add(bar, "{}年".format(i))

    for t in tl.options.get("options"):
        assert "xAxis" in t
        assert "color" in t
Esempio n. 29
0
def timeline_map() -> Timeline:
    tl = Timeline()
    for i in range(2015, 2020):
        map0 = (Map().add(
            "商家A", [list(z) for z in zip(Faker.provinces, Faker.values())],
            "china").set_global_opts(
                title_opts=opts.TitleOpts(title="Map-{}年某些数据".format(i)),
                visualmap_opts=opts.VisualMapOpts(max_=200),
            ))
        tl.add(map0, "{}年".format(i))
    return tl
def timeline_bar() -> Timeline:
    xs = Faker.choose()
    ys = Faker.values()
    tl = Timeline()
    for i in range(len(xs)):
        c = (Line().add_xaxis(xs).add_yaxis("商家A", ys[:i]).set_global_opts(
            title_opts=opts.TitleOpts(title="Line-基本示例")))

        tl.add(c, "{}x".format(i))

    return tl