如题,尝试在python中绘制中国人口差异分布图。因为basemap安装不上所以改用echarts。代码顺利跑出来了,但出来的地图上并没有按照我Excel里编辑的数据,按照不同人口数量显示不同颜色。
以为是数值范围的问题,但改了很多遍也不行。我的数据范围在350-12600之间,但max_=5000/max_=10000/max_=100000都试过了都不行。
有大佬能帮忙看看是哪里出了问题吗?拜托了!
代码如下:
$ pip install echarts-countries-pypkg $ pip install echarts-china-provinces-pypkg $ pip install echarts-china-cities-pypkg $ pip install echarts-china-counties-pypkg $ pip install echarts-china-misc-pypkg $ pip install echarts-united-kingdom-pypkg
import pandas as pd
from pyecharts.charts import Map
from pyecharts import options as opts
import os
import matplotlib as mpl
from matplotlib import pyplot as plt
data=pd.read_excel(r"D:/软件安装/Python/作业/1021作业.xlsx")
mpl.rcParams["font.sans-serif"]=["SimHei"]
plt.rcParams['axes.unicode_minus'] = False
print(data)
attr= data["省份"]
value=data["常驻人数(万人)"]
data = []
for index in range(len(attr)):
city_ionfo=[attr[index],value[index]]
data.append(city_ionfo)
c = (
Map()
.add("中国地图",data, "china")
.set_series_opts(label_opts=opts.LabelOpts(is_show=True))
.set_global_opts(
title_opts=opts.TitleOpts(title="中国人口数量分布图"),
visualmap_opts=opts.VisualMapOpts(max_=5000),
)
.render("Map.html")
)
#Map.set_legend()#图例
我想做出的效果是像封面那样
但我实际做出来是下面这样的:
软件里是能正常读出Excel中的数据的,如下图:
实在不知道是怎么办了,求求各位大佬帮帮忙,指点一二啊,拜托拜托~~



