m0_60492570 2021-08-20 10:11 采纳率: 71.4%
浏览 105
已结题

选修课python最后一题,这题不会,请求帮助

北京新源实业有限公司2020年简化利润表如下图:

img

要求
根据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()

  • 写回答

2条回答 默认 最新

  • yklgogogo 2021-08-20 10:37
    关注
    
    
    ```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()
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月28日
  • 已采纳回答 8月20日
  • 赞助了问题酬金 8月20日
  • 创建了问题 8月20日

悬赏问题

  • ¥20 求有缘人帮我把笛卡尔坐标系转换为经纬度 有偿
  • ¥15 vue2中使用计算属性
  • ¥50 远程桌面打开Mastercam、没有许可证、物理机打开正常
  • ¥15 ubuntu安装gdal后java读取tif文件报错
  • ¥15 请问lammps怎么做两种金属连接的原子浓度分布图
  • ¥15 求jacquard数据集
  • ¥15 w10部分软件不能联网
  • ¥15 关于安装hbase的问题(操作系统-windows)
  • ¥15 novnc连接pve虚拟机报错安全协议不支持262
  • ¥15 设备精度0.03给多少公差能达到CPK1.33