0802 可乐的销量(批量绘制折线图)

0802 可乐的销量(批量绘制折线图)

知识点

读取excel
绘制折线图

题目和解题步骤

菜菜的同事飞飞要绘制两种商品的折线图,比较商品销量趋势。

商品销量保存在table文档中,文档路径为: /Users/caicai/table.xlsx 。

文档中第一行的为月份,第二行是火龙果可乐的销量,第三行是榴莲味可乐的销量。

题目要求:

  1. 读取文档的月份作为x轴,一共有1~12个月;
  2. 读取文档中的数据将商品销量作为y轴,绘制折线图 ;
  3. series_name设置为对应行的商品名称;
  4. 使用 TitleOpts() 函数将标题设置为:增长趋势的比较 ;
  5. 将文件保存到路径: /Users/caicai/line.html

存储销量的文档:
在这里插入图片描述

生成图表的示例:
在这里插入图片描述

代码

# 使用import导入openpyxl模块
import openpyxl
# 使用import从pyecharts中导入options
from pyecharts import options as opts
# 使用import从pyecharts中导入Line
from pyecharts.charts import Line

# 将文件路径“/Users/caicai/table.xlsx”赋值给path
path = "/Users/caicai/table.xlsx"
# 使用openpyxl.load_workbook()读取文件,赋值给wb
wb = openpyxl.load_workbook(path)
# 使用wb[]读取"销量"表格, 赋值给ws
ws = wb["销量"]

# TODO 定义read_row函数用于读取行数据,传入参数row表示行数
def read_row(row):
    # TODO 创建一个空的列表data
    data = []
    # TODO 使用for循环遍历ws[row]中的每一个单元格
    for i in ws[row]:
        # TODO 使用.value取单元格的值,使用append()将数据追加到data中
        data.append(i.value)
    # TODO 使用return返回data
    return(data)

# 使用Line()函数创建对象,赋值给line
line = Line()

# 使用for循环配合range(),遍历数字1~3
for row in range(1, 4):
    # TODO 读取第row行的数据,赋值给row_data变量
    row_data = read_row(row)
    # TODO 使用if判断,当row的值为1时
    if row==1 :
        # TODO 使用add_xaxis()函数添加x轴的数据,数据为row_data从第二个到末尾的数据
        line.add_xaxis(row_data[1:])
    # row不为1时
    else:
        # TODO 将第一个数据row_data[0]传入series_name参数
        # 将第二至末尾的数据row_data[1:]传入y_axis参数中
        # 使用add_yaxis()函数添加y轴数据
        line.add_yaxis(series_name = row_data[0],y_axis=row_data[1:])
# 使用set_global_opts()函数添加标题为"增长趋势的比较"
line.set_global_opts(
        title_opts=opts.TitleOpts(title="增长趋势的比较"),
    )
# 使用render()函数将图表保存至路径"/Users/caicai/line.html"
line.render("/Users/caicai/line.html")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值