当前位置: 代码迷 >> 综合 >> 【pyecharts】.add_yaxis添加纵坐标的值可视化后数据不显示
  详细解决方案

【pyecharts】.add_yaxis添加纵坐标的值可视化后数据不显示

热度:38   发布时间:2024-02-06 13:24:52.0

问题代码【发现横坐标可以正确显示但纵坐标一直不显示】

from pyecharts.charts import Bar
import pandas as pd
import os
path = "./tmp_overseas"
files = os.listdir(path)
usa_date = []
usa_new = []
for i in files:usa_data = pd.read_csv("./tmp_overseas/{}".format(i), index_col=0)date = i[-9:-4]usa_data = usa_data.loc["美国"]["累计确诊"]usa_new.append(usa_data)usa_date.append(date)
bar = (Bar().add_xaxis(usa_date).add_yaxis(series_name="text", y_axis=usa_new)
)
bar.render_notebook()


这里用普通列表test来代替usa_new进行测试【发现可以正确显示】

from pyecharts.charts import Bar
import pandas as pd
import os
path = "./tmp_overseas"
files = os.listdir(path)
usa_date = []
usa_new = []
for i in files:usa_data = pd.read_csv("./tmp_overseas/{}".format(i), index_col=0)date = i[-9:-4]usa_data = usa_data.loc["美国"]["累计确诊"]usa_new.append(usa_data)usa_date.append(date)
test = [23, 34]
bar = (Bar().add_xaxis(usa_date).add_yaxis(series_name="text", y_axis=test)
)
bar.render_notebook()

在这里插入图片描述
查看usa_new的类型和test的类型区别【结果发现都是列表类型,这就奇怪了,为什么两个列表一个可以显示一个不可以显示】

print(type(usa_new))
print(type(test))

在这里插入图片描述
进一步排查错误,查看usa_new和test这两个列表的数据类型是否有区别【发现问题了,一个师numpy.int64类型一个是int类型,并结合刚才的测试结果,test可以正常显示,usa_new不能正确显示,这里判断可能是int类型可以正确显示而numpy.int64类型不能正确显示,所以采取修改usa_new中的数据类型为int的方式来查看是否可以正确显示】

print(type(usa_new[0]))
print(type(test[0]))

在这里插入图片描述
修改usa_new列表中的数据类型为int【发现能够完美解决该问题】

from pyecharts.charts import Bar
import pandas as pd
import os
path = "./tmp_overseas"
files = os.listdir(path)
usa_date = []
usa_new = []
for i in files:usa_data = pd.read_csv("./tmp_overseas/{}".format(i), index_col=0)date = i[-9:-4]usa_data = usa_data.loc["美国"]["累计确诊"]usa_new.append(int(usa_data))  # 这里将usa_new中的数据类型转换为intusa_date.append(date)
bar = (Bar().add_xaxis(usa_date).add_yaxis(series_name="text", y_axis=usa_new)
)
bar.render_notebook()

在这里插入图片描述

  相关解决方案