一、
from pyecharts.charts import Map
from pyecharts.options import VisualMapOpts
map=Map()
data=[
("北京",99),
("上海",199),
("湖南",299),
("台湾",399),
("广东",499)
]
map.add("测试地图",data,"china")
map.set_global_opts(
visualmap_opts=VisualMapOpts(
is_show=True,
is_piecewise=True,
pieces=[
{"min":1,"max":9,"label":"1-9","color":"#CCFFFF"},
{"min":10,"max":99,"label":"10-99","color":"#FF6666"},
{"min":100,"max":500,"label":"100-500","color":"#990033"}
]
)
)
map.render()
二、
import json
from pyecharts.charts import Map
from pyecharts.options import *
f=open("D:/疫情.txt","r",encoding="UTF-8")
data=f.read()
f.close()
data_dict=json.loads(data)
province_data_list=data_dict["areaTree"][0]["children"]
data_list=[]
for province_data in province_data_list:
province_name=province_data["name"]
province_confirm=province_data["total"]["confirm"]
data_list.append((province_name,province_confirm))
map=Map()
map.add("各省确诊人数",data_list,"china")
map.set_global_opts(
title_opts=TitleOpts(title="全国疫情地图"),
visualmap_opts=VisualMapOpts(
is_show=True,
is_piecewise=True,
pieces=[
{"min":1,"max":99,"label":"1-99人","color":"#CCFFFF"},
{"min":100,"max":999,"label":"10-99人","color":"#FFFF99"},
{"min":1000,"max":4999,"label":"1000-4999人","color":"#FF9966"},
{"min":5000,"max":9999,"label":"5000-9999","color":"#FF6666"},
{"min":10000,"max":99999,"label":"10000-99999","color":"#CC0033"},
{"min":100000,"label":"100000+","color":"#990033"}
]
)
)
map.render("全国疫情地图.html")
三、柱状图
1.
from pyecharts.charts import Bar
from pyecharts.options import LabelOpts
bar=Bar()
bar.add_xaxis(["中国","美国","英国"])
bar.add_yaxis("GDP",[30,20,10],label_opts=LabelOpts(position="right"))
bar.reversal_axis()
bar.render("基础柱状图.html")
2.
from pyecharts.charts import Bar,Timeline
from pyecharts.options import LabelOpts
from pyecharts.charts import *
from pyecharts.globals import ThemeType
bar1=Bar()
bar1.add_xaxis(["中国", "美国", "英国"])
bar1.add_yaxis("GDP", [30, 20, 10], label_opts=LabelOpts(position="right"))
bar1.reversal_axis()
bar2=Bar()
bar2.add_xaxis(["中国", "美国", "英国"])
bar2.add_yaxis("GDP", [10, 50, 20], label_opts=LabelOpts(position="right"))
bar2.reversal_axis()
bar3=Bar()
bar3.add_xaxis(["中国", "美国", "英国"])
bar3.add_yaxis("GDP", [30, 20, 10], label_opts=LabelOpts(position="right"))
bar3.reversal_axis()
timeline=Timeline({"theme":ThemeType.LIGHT})
timeline.add(bar1,"点1")
timeline.add(bar2,"点2")
timeline.add(bar2,"点3")
timeline.add_schema(
play_interval=1000,
is_timeline_show=True,
is_auto_play=True,
is_loop_play=True
)
timeline.render("基础时间线柱状图.html")
3.动态柱状图
from pyecharts.charts import Bar,Timeline
from pyecharts.options import *
from pyecharts.globals import ThemeType
f=open("D:/1960-2019全球GDP数据.csv","r",encoding="GB2312")
data_lines=f.readlines()
f.close()
data_lines.pop(0)
data_dict={}
for line in data_lines:
year=int(line.split(",")[0])
country=line.split(",")[1]
gdp=float(line.split(",")[2])
try:
data_dict[year].append([country,gdp])
except KeyError:
data_dict[year]=[]
data_dict[year].append([country, gdp])
timeline=Timeline({"theme":ThemeType.LIGHT})
sorted_year_list=sorted(data_dict.keys())
#print(type(sorted_year_list))
#print(sorted_year_list)
for year in sorted_year_list:
data_dict[year].sort(key=lambda element:element[1],reverse=True)
#print(data_dict[year])
year_data=data_dict[year][0:8]
x_data=[]
y_data=[]
for country_gdp in year_data:
x_data.append(country_gdp[0])
y_data.append(country_gdp[1]/100000000)
bar=Bar()
x_data.reverse()
y_data.reverse()
bar.add_xaxis(x_data)
bar.add_yaxis("GDP(亿)",y_data,label_opts=LabelOpts(position="right"))
bar.reversal_axis()
bar.set_global_opts(
title_opts=TitleOpts(title=f"{year}年全球前8GDP数据")
)
timeline.add(bar,str(year))
timeline.add_schema(
play_interval=1000,
is_timeline_show=True,
is_loop_play=True,
is_auto_play=True
)
timeline.render("1960_2019全球前8国家.html")