赞
踩
#导入模块
from pyecharts.charts import Bar
#创建柱状图对象
bar=Bar()
#添加X和Y轴数据
bar.add_xaxis(["中国","美国","英国"])
bar.add_yaxis("GDP",[30,20,10])
#生成柱状图
bar.render("中美英GDP.html")
#导入模块
from pyecharts.charts import Bar
#创建柱状图对象
bar=Bar()
#添加X和Y轴数据
bar.add_xaxis(["中国","美国","英国"])
bar.add_yaxis("GDP",[30,20,10])
#反转x和y轴
bar.reversal_axis()
#生成柱状图
bar.render("中美英GDP.html")
可以改变柱状图的颜色。
bar.add_yaxis("GDP",[30,20,10],color="red")
改变数字显示的位置
from pyecharts.options import *
bar.add_yaxis("GDP",[30,20,10],color="red",label_opts=LabelOpts(position="right"))
#导入模块 from pyecharts.charts import Bar,Timeline from pyecharts.options import * #创建柱状图对象 bar=Bar() bar1=Bar() bar2=Bar() #添加X和Y轴数据 bar.add_xaxis(["中国","美国","英国"]) bar.add_yaxis("GDP",[30,20,10],color="red",label_opts=LabelOpts(position="right")) bar.reversal_axis() bar1.add_xaxis(["中国","美国","英国"]) bar1.add_yaxis("GDP",[50,100,30],color="red",label_opts=LabelOpts(position="right")) bar1.reversal_axis() bar2.add_xaxis(["中国","美国","英国"]) bar2.add_yaxis("GDP",[60,20,50],color="red",label_opts=LabelOpts(position="right")) bar2.reversal_axis() #创建时间线对象 timeline=Timeline() #向时间线对象中添加数据 timeline.add(bar,"2022") timeline.add(bar1,"2023") timeline.add(bar2,"2024") #生成时间线柱状图 timeline.render("中美英GDP.html")
timeline.add_schema(
play_interval=1000,#单位是ms
is_auto_play=True,#自动播放
is_loop_play=True,#循环播放
)
timeline=Timeline(
{"theme":ThemeType.LIGHT}
)
前面学习过的sorted函数可以对数据容器进行排序,但是不能指定排序规则,在后面的数据处理中,我们需要对容器进行排序而且还需要指定排序规则sorted函数就无法实现,我们需要使用sort函数。
sort函数使用方式:列表.sort(key=选择排序依据的函数,reversion=True|False)
参数key:要求传入一个函数,将元素中的每一个元素都传入函数中,返回排序的依据。
参数reversion:是否反转排序的结果。True表示降序,False表示升序。
带名函数形式
#要对嵌套的列表进行排序,普通的sorted就无法实现要使用sort方法
my_list=[["a",100],["b",103],["c",50]]
def choose_sort_key(element):
return element[1]
my_list.sort(key=choose_sort_key,reverse=True)#将元素传入choose_sort_key函数中,通过返回值确定按照谁来排序。
print(my_list)
匿名函数形式:
#要对嵌套的列表进行排序,普通的sorted就无法实现要使用sort方法
my_list=[["a",100],["b",103],["c",50]]
my_list.sort(key=lambda element:element[1],reverse=True)#将元素传入匿名函数中,通过返回值确定按照谁来排序。匿名函数自带返回值
print(my_list)
#GDP柱状图开发 #导入模块 from pyecharts.charts import Bar,Timeline from pyecharts.options import * from pyecharts.globals import * #读取数据 f=open(r"C:\cwy\slsd\毕设\python学习\资料\第1-12章资料\资料\可视化案例数据\动态柱状图数据\1960-2019全球GDP数据.csv","r",encoding="GB2312") data_lines=f.readlines(); #关闭文件 f.close() #删除第一条数据 data_lines=data_lines[1:] #print(data_lines) #将数据转换为字典格式存储,格式:{年份,[[国家,GDP],[国家,GDP]......],年份,[[国家,GDP],[国家,GDP]......],......} data_dict={} for line in data_lines: year_data=int(line.split(",")[0]) country=line.split(",")[1] gdp=float(line.split(",")[2]) try: data_dict[year_data].append([country,gdp]) except KeyError: data_dict[year_data]=[] data_dict[year_data].append([country, gdp]) #print(data_dict) #排序年份 sorted_year_list=sorted(data_dict) #创建时间线对象,更改主题 timeline=Timeline({"theme" :ThemeType.LIGHT}) #for循环每一年的数据,基于每一年的数据创建每一年的bar对象 #在for循环中将每一年的bar对象添加到时间线中 for year in sorted_year_list: bar=Bar() data_list=data_dict[year] data_list.sort(key=lambda element:element[1],reverse=True) data_list=data_list[:8] data_list.reverse() city_list=[] gdp_list=[] for sort_data_list in data_list: city_list.append(sort_data_list[0]) gdp_list.append(sort_data_list[1]/100000000) bar.add_xaxis(city_list) bar.add_yaxis("gdp(亿)",gdp_list,label_opts=LabelOpts(position="right")) bar.reversal_axis() #设置每一年图表的标题 bar.set_global_opts( title_opts=TitleOpts(title=f"{year}年全球前八GDP数据") ) timeline.add(bar,year) #设置时间线自动播放 timeline.add_schema( play_interval=1000, is_auto_play=True, is_loop_play=False ) #绘图 timeline.render("1960-2019全球GDP前八.html")
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。