网站制作厦门,电商分销系统,wordpress个人网站备案管理,上海网站建设红旗【已解决】Pyecharts折线图#xff0c;只有坐标轴没有折线数据 1、问题复现2、原因3、问题解决 1、问题复现
在做简单的数据通过 Pyecharts 生成折现图的时候#xff0c;一直只有坐标轴没有折线数据#xff0c;但是代码一直看不出问题#xff0c;代码如下#xff1a;
im… 【已解决】Pyecharts折线图只有坐标轴没有折线数据 1、问题复现2、原因3、问题解决 1、问题复现
在做简单的数据通过 Pyecharts 生成折现图的时候一直只有坐标轴没有折线数据但是代码一直看不出问题代码如下
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Linedata pd.DataFrame(data[[2011, 33.6], [2012, 33.0], [2013, 31.2], [2014, 31.0], [2015, 30.6], [2016, 30.1], [2017, 29.3],[2018, 28.4], [2019, 28.2], [2020, 30.2]], columns[年份, 恩格尔系数])line (Line().add_xaxis(data[年份].tolist()).add_yaxis(恩格尔系数, data[恩格尔系数].tolist(), label_optsopts.LabelOpts(is_showTrue)).set_global_opts(title_optsopts.TitleOpts(title2011年-2020年居民恩格尔系数Pyecharts),toolbox_optsopts.ToolboxOpts(),xaxis_optsopts.AxisOpts(name年份),yaxis_optsopts.AxisOpts(name恩格尔系数),)
)line.render(恩格尔系数折线图Pyecharts.html) 2、原因
在 Pyecharts 库中x 轴数据类型对于确定数据的显示方式非常重要。
Pyecharts 将 ‘年份’ 值视为数值。当 x 轴值是数值时Pyecharts 会尝试创建一个连续轴这可能不会正确显示离散的年度数据。
当你使用 .add_xaxis(data[年份].astype(str).tolist()) 时你明确地将 ‘年份’ 列转换为字符串然后传递给 x 轴。这有助于 Pyecharts 将 ‘年份’ 值视为离散类别而不是数值。
因此通过将 ‘年份’ 转换为字符串你告诉 Pyecharts 将它们视为类别它会将数据显示为一条包含每年单独点的折线图。
3、问题解决
把 x 轴的数据转化为 str问题就解决了代码如下
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Linedata pd.DataFrame(data[[2011, 33.6], [2012, 33.0], [2013, 31.2], [2014, 31.0], [2015, 30.6], [2016, 30.1], [2017, 29.3],[2018, 28.4], [2019, 28.2], [2020, 30.2]], columns[年份, 恩格尔系数])line (Line().add_xaxis(data[年份].astype(str).tolist()).add_yaxis(恩格尔系数, data[恩格尔系数].tolist(), label_optsopts.LabelOpts(is_showTrue)).set_global_opts(title_optsopts.TitleOpts(title2011年-2020年居民恩格尔系数Pyecharts),toolbox_optsopts.ToolboxOpts(),xaxis_optsopts.AxisOpts(name年份),yaxis_optsopts.AxisOpts(name恩格尔系数),)
)line.render(恩格尔系数折线图Pyecharts.html)