如果直接from pyecharts import Bar
,会发现报错TypeError: 'module' object is not callable
,这是因为pyecharts版本更新后,导入模块的方式也变了。
标准地理数据格式为 '省份': 数量
。
locality = ['安徽', '湖北', '广东', '河南', '江苏', '浙江', '陕西', '山东', '天津', '北京', '福建','湖南', '四川', '上海', '重庆', '河北', '云南', '辽宁', '山西', '江西', '贵州' ,'广西', '黑龙江', '吉林', '甘肃', '海南', '新疆', '内蒙古', '宁夏', '青海', '香港', '西藏']
number = [300,300,300,300,299,299,299,299,299,298,298,298,297,295,255,248,233,172,168,162,148,136,123,92,81,71,66,48,23,17,2,2]
data = dict(zip(locality,number))
print(data)
输出:
{'安徽': 300, '湖北': 300, '广东': 300, '河南': 300, '江苏': 299, '浙江': 299, '陕西': 299, '山东': 299, '天津': 299, '北京': 298, '福建': 298, '湖南': 298, '四川': 297, '上海': 295, '重庆': 255, '河北': 248, '云南': 233, '辽宁': 172, '山西': 168, '江西': 162, '贵州': 148, '广西': 136, '黑龙江': 123, '吉林': 92, '甘肃': 81, '海南': 71, '新疆': 66, '内蒙古': 48, '宁夏': 23, '青海': 17, '香港': 2, '西藏': 2}
输出到jupyter notebook
from pyecharts import options as opts
from pyecharts.charts import Map
def map_visualmap() -> Map:
c = (
Map()
.add("产品经理岗位数量", [list(z) for z in zip(data.keys(), data.values())], "china")
.set_global_opts(
title_opts=opts.TitleOpts(title="地图数据分布"),
visualmap_opts=opts.VisualMapOpts(max_=300),
)
)
return c
c = map_visualmap()
c.render_notebook()
# 城市 -- 指定省的城市 xx市
city = ['郑州市', '安阳市', '洛阳市', '濮阳市', '南阳市', '开封市', '商丘市', '信阳市', '新乡市']
values2 = [1.07, 3.85, 6.38, 8.21, 2.53, 4.37, 9.38, 4.29, 6.1]
# 河南地图 数据必须是省内放入城市名
data = dict(zip(city,values2))
def map_visualmap() -> Map:
c = (
Map()
.add("公司数量分布", [list(z) for z in zip(data.keys(), data.values())], "河南")
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(max_=7), # max设定最大值
)
)
return c
c = map_visualmap()
c.render_notebook()