import pandas as pd import numpy as np path_marry=r"D:\迅雷下载\新建文件夹\数据集\数据可视化数据集\结婚离婚\结婚数据.csv" path_divorse=r"D:\迅雷下载\新建文件夹\数据集\数据可视化数据集\结婚离婚\离婚数据.csv" marry_data=pd.read_csv(path_marry) divorse_data=pd.read_csv(path_divorse) marry_data=marry_data.set_index(marry_data['地区']).drop(columns=["地区"]) #将索引变成地区 demo=marry_data.transpose() #transpose可以实现行列互换 demo["全国合计"]=demo.sum(axis=1) #沿着1轴相加 marry_data=demo.transpose() #取出要可视化的行列,一般索引为X轴数据,VALUE值为Y轴数据 show_data2=marry_data["2019年"] show_data2=show_data2.iloc[:-1] x_axis_data=show_data2.index.tolist() y_axis_data=show_data2.values.tolist() from pyecharts import options as opts from pyecharts.charts import Bar from pyecharts.faker import Faker c = ( Bar(init_opts=opts.InitOpts(width="1000px",height="700px")) .add_xaxis(x_axis_data) .add_yaxis("2019年结婚登记数量(万对)", y_axis_data) .reversal_axis() #进行轴的转换 .set_series_opts(label_opts=opts.LabelOpts(position="right")) .set_global_opts(title_opts=opts.TitleOpts(title="全国2019年结婚登记数量(万对)")) ) c.render_notebook()我想让数据升序展示,请帮我修改代码
时间: 2024-03-23 08:36:24 浏览: 181
你可以将 `y_axis_data` 和 `x_axis_data` 对应排序,再进行可视化展示。修改后的代码如下:
```
import pandas as pd
import numpy as np
from pyecharts import options as opts
from pyecharts.charts import Bar
path_marry=r"D:\迅雷下载\新建文件夹\数据集\数据可视化数据集\结婚离婚\结婚数据.csv"
marry_data=pd.read_csv(path_marry)
marry_data=marry_data.set_index(marry_data['地区']).drop(columns=["地区"])
demo=marry_data.transpose()
demo["全国合计"]=demo.sum(axis=1)
marry_data=demo.transpose()
show_data2=marry_data["2019年"]
show_data2=show_data2.iloc[:-1]
x_axis_data=show_data2.index.tolist()
y_axis_data=show_data2.values.tolist()
# 对y轴数据和x轴数据进行对应排序
y_axis_data, x_axis_data = zip(*sorted(zip(y_axis_data, x_axis_data)))
c = (
Bar(init_opts=opts.InitOpts(width="1000px",height="700px"))
.add_xaxis(x_axis_data)
.add_yaxis("2019年结婚登记数量(万对)", y_axis_data)
.reversal_axis()
.set_series_opts(label_opts=opts.LabelOpts(position="right"))
.set_global_opts(title_opts=opts.TitleOpts(title="全国2019年结婚登记数量(万对)"))
)
c.render_notebook()
```
这样的话,就可以升序排列展示了。
阅读全文