python绘制动态条形图排行榜

Ⅰ.数据

数据

Ⅱ.动态条形图排行榜(样式一)

动态条形图

Ⅲ.python程序(一)

import pandas as pd
from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.charts import Timeline

data=pd.read_excel('地区生产总值(亿元).xlsx',sheet_name='Sheet1',index_col=0)
x=list(data.columns)
y=data.values
year=list(data.index)

timeline=Timeline()

for i in range(len(data)):
    xy=list(zip(x,y[i]))
    xy.sort(key=lambda x:x[1],reverse=False)
    xy=xy[-10:]
    bar=(
        Bar()
        .add_xaxis(xaxis_data=[i[0] for i in xy])
        .add_yaxis(series_name=str(2002+i)+'年地区生产总值',y_axis=[i[1] for i in xy])
        .reversal_axis()
        .set_global_opts(title_opts=opts.TitleOpts(title='地区生产总值排行榜(%s年)'%(2002+i),subtitle='单位:亿元',pos_left='center',pos_top='top'),
                         legend_opts=opts.LegendOpts(is_show=False),
                         visualmap_opts=opts.VisualMapOpts(
                             is_show=True,pos_top='center',range_color=['lightskyblue','yellow','orangered'],min_=0,max_=10)
                         )
        .set_series_opts(label_opts=opts.LabelOpts(is_show=True,position='right',color='red'))
        )
    timeline.add(bar,year[i]).add_schema(is_auto_play=True)
timeline.render('地区生产总值排行榜.html')

Ⅳ.动态条形图排行榜(样式二)

动态条形图2

Ⅴ.python程序(二)

import pandas as pd
from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.charts import Timeline
import random

data=pd.read_excel('地区生产总值(亿元).xlsx',sheet_name='Sheet1',index_col=0)
x=list(data.columns)
y=data.values
year=list(data.index)

# 随机生成31种颜色
get_colors=lambda n:list(map(lambda i:"#"+"%06x"%random.randint(0,0xFFFFFF),range(len(x))))
one_color=get_colors(len(x))

timeline=Timeline()

for i in range(len(data)):
    xy=list(zip(x,y[i],one_color)) # 给每个地区匹配一种颜色
    xy.sort(key=lambda x:x[1],reverse=False)
    xy=xy[-10:]
    bar=(
        Bar()
        .add_xaxis(xaxis_data=[i[0] for i in xy])
        .add_yaxis(series_name=str(2002+i)+'年地区生产总值',y_axis=[i[1] for i in xy],color=[i[2] for i in xy])
        .reversal_axis()
        .set_global_opts(title_opts=opts.TitleOpts(title='地区生产总值排行榜(%s年)'%(2002+i),subtitle='单位:亿元',pos_left='center',pos_top='top'),
                         legend_opts=opts.LegendOpts(is_show=False),
                         visualmap_opts=opts.VisualMapOpts(is_show=False,range_color=[i[2] for i in xy],min_=0,max_=10))
        .set_series_opts(label_opts=opts.LabelOpts(is_show=True,position='right',color='red'))
        )
    timeline.add(bar,year[i]).add_schema(is_auto_play=True)
timeline.render('地区生产总值排行榜.html')

  • 3
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值