北京新源实业有限公司2020年简化利润表如下图:
要求
根据DataFrame的数据绘制柱状图,对比实际数与计划数;其中,x轴对应数据为“项目”列,y轴对应数据为“计划”列与“实际”列。
请根据题目要求完成以下代码
注意:只能修改” 修改代码开始“ 及 ”修改代码结束 “ 之间的代码
引入pandas、表格类型、配置项、主题类型
from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.globals import ThemeType
import pandas as pd
data = {'项目':['产品销售利润','其他销售利润','投资净收益','营业外净收支','利润总额'],
'计划':[962112,38000,70000,-33944,1036168],
'实际':[1070740,32000,75000,-28514,1149226]}
df = pd.DataFrame(data)
定义函数
def func():
修改代码开始
数据转换:请将DataFrame转换为Python列表类型
初始化配置
bar1 = Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))
添加数据
设置全局配置项
bar1.set_global_opts(title_opts = opts.TitleOpts(title='计划与目标对比图',pos_left='center'),
legend_opts = opts.LegendOpts(pos_left='center',pos_top='5%',orient='vertical'))
return bar1
bar=func()
展示数据
bar.render_notebook()
```python
from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.globals import ThemeType
import pandas as pd
data = {'项目': ['产品销售利润', '其他销售利润', '投资净收益', '营业外净收支', '利润总额'],
'计划': [962112, 38000, 70000, -33944, 1036168],
'实际': [1070740, 32000, 75000, -28514, 1149226]}
df = pd.DataFrame(data)
# 定义函数
def func():
# 修改代码开始
# 数据转换:请将DataFrame转换为Python列表类型
df.values.tolist()
# 初始化配置
bar1 = Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))
# 添加数据
bar1.add_xaxis(df["项目"].tolist())
bar1.add_yaxis("计划", df["计划"].tolist())
bar1.add_yaxis("实际", df["实际"].tolist())
# 设置全局配置项
bar1.set_global_opts(title_opts=opts.TitleOpts(title='计划与目标对比图', pos_left='center'),
legend_opts=opts.LegendOpts(pos_left='center', pos_top='5%', orient='vertical'))
return bar1
bar = func()
# 展示数据
bar.render_notebook()
```
只添加了3行代码,22~24,实现效果图如图:
# 引入pandas、表格类型、配置项、主题类型
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.globals import ThemeType
data = {'项目': ['产品销售利润', '其他销售利润', '投资净收益', '营业外净收支', '利润总额'],
'计划': [962112, 38000, 70000, -33944, 1036168],
'实际': [1070740, 32000, 75000, -28514, 1149226]}
df = pd.DataFrame(data)
# 定义函数
def func():
# 修改代码开始
# 数据转换:请将DataFrame转换为Python列表类型
# 初始化配置
bar1 = Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))
# 添加数据
bar1.add_xaxis(data['项目'])
bar1.add_yaxis("计划", data['计划'])
bar1.add_yaxis("实际", data['实际'])
# 设置全局配置项
bar1.set_global_opts(title_opts=opts.TitleOpts(title='计划与目标对比图', pos_left='center'),
legend_opts=opts.LegendOpts(pos_left='center', pos_top='5%', orient='vertical'))
return bar1
bar = func()
# 展示数据
# bar.render("bar_asks.html")
bar.render_notebook()
如有帮助,请采纳哦~