原始的excel表格如图:
读取国家名字和金牌的数据:
from pyecharts.charts import Bar
import pandas as pd
df5 = pd.read_excel("abc.xlsx")
for i in range(1,len(df5)):
columns = df5['名称'].values[i]
bar_columns.append(columns)
one = df5['金牌'].values[i]
bar_one.append(one)
bar = Bar()
bar.add_xaxis(bar_columns) #横坐标
bar.add_yaxis("金牌",bar_one,color='green') #纵坐标
bar.render('bb.html')
?结果图中纵坐标无数据:
?查了好久的原因发现是以为,读出来的数据的数字类型为<class 'numpy.int64'>,所以在存进list里面前转化一下数据类型,
df5 = pd.read_excel("abc.xlsx")
bar_columns = []
bar_one = []
for i in range(1,len(df5)):
columns = df5['名称'].values[i]
bar_columns.append(columns)
one = df5['金牌'].values[i]
# bar_one.append(one)
bar_one.append(int(one)) #数据需转化为int类型
bar = Bar()
bar.add_xaxis(bar_columns)
print(bar_one)
bar.add_yaxis("金牌",bar_one,color='green')
bar.render('bb.html')
如此再次运行的话,结果就出来啦~
|