当前位置: 首页 > news >正文

AI数据分析:根据Excel表格数据绘制柱形图

工作任务:将Excel文件中2013年至2019年间线上图书的销售额,以条形图的形式呈现,每个条形的高度代表相应年份的销售额,同时在每个条形上方标注具体的销售额数值

在deepseek中输入提示词:

你是一个Python编程专家,要完成一个Python脚本编写的任务,具体步骤如下:

读取xls格式的Excel文件"F:\AI自媒体内容\books.xlsx"的第二个工作表:Sheet2,

用matplotlib绘制一个柱状图:

获取C1单元格到C8单元格的内容作为x轴的数据。

获取G1单元格到G8单元格的内容作为y轴的数据。

绘制y轴上的虚线网格。

设置x轴标签为“年份”。

设置y轴标签为“线上销售额(元)”。

设置图表的标题为“2013-2019年线上图书销售额分析图”。

设置柱状图中每个柱子的宽度=0.5,对齐方式:居中对齐,颜色为蓝色,透明度=0.5,底部起始位置=0.8;

对于每个柱子,上方添加文本标签,显示销售额的值,并格式化为千位分隔符格式;文本的字体大小为9,颜色为红色,透明度为0.9。

添加图例,包含标签“销售额”。

设置matplotlib默认字体为'SimHei',文件路径为:C:\Windows\Fonts\simhei.ttf

保存图片到文件夹“F:\AI自媒体内容”;

显示图片;

注意:每一步都输出信息到屏幕

源代码:

import pandas as pd

import matplotlib.pyplot as plt

# 设置matplotlib默认字体

plt.rcParams['font.sans-serif'] = ['SimHei'] # 雅黑字体

plt.rcParams['axes.unicode_minus'] = False # 正确显示负号

# 读取Excel文件的第二个工作表

file_path = "F:\\AI自媒体内容\\books.xlsx"

sheet_name = "Sheet2"

df = pd.read_excel(file_path, sheet_name=sheet_name)

# 获取x轴和y轴数据

x_data = df.iloc[0:8, 2].values # C列的数据,从第二行到第八行

y_data = df.iloc[0:8, 6].values # G列的数据,从第二行到第八行

# 创建柱状图

fig, ax = plt.subplots()

bars = ax.bar(x_data, y_data, width=0.3, align='center', color='b', alpha=0.5, bottom=0.8)

# 添加文本标签

for bar in bars:

height = bar.get_height()

ax.text(bar.get_x() + bar.get_width() / 2, height,

'{:,.0f}'.format(height),

ha='center', va='bottom', fontsize=9, color='r', alpha=0.9)

# 绘制y轴上的虚线网格

ax.yaxis.grid(True, linestyle='dashed')

# 设置x轴和y轴标签

ax.set_xlabel('年份')

ax.set_ylabel('线上销售额(元)')

# 设置图表标题

ax.set_title('2013-2019年线上图书销售额分析图')

# 添加图例

ax.legend([bars], ['销售额'])

# 显示图片

plt.show()

# 保存图片

save_path = "F:\\AI自媒体内容\\sales_analysis.png"

plt.savefig(save_path)

print(f"图片已保存到:{save_path}")

http://www.lryc.cn/news/369056.html

相关文章:

  • 基于协调过滤算法商品推荐系统的设计
  • CS1061 “HtmlHelper”未包含“Partial”的定义,并且找不到可接受第一个“HtmlHelper”类型参数的可访问扩展方法“Partial”
  • 大数据运维学习笔记之flink standalone flink on yarn集群搭建 —— 筑梦之路
  • 在知识的海洋中航行:问题的演变与智慧的追求
  • splice()、slice()、split()三种方法的区别
  • iOS 之homebrew ruby cocoapods 安装
  • 【栈】2751. 机器人碰撞
  • 贪心算法06(leetcode738,968)
  • cve_2022_0543-redis沙盒漏洞复现 vulfocus
  • 浅解Reids持久化
  • Java24:会话管理 过滤器 监听器
  • web前端电影简介标签:深度解析与创意应用
  • Java面向对象-方法的重写、super
  • 解锁ChatGPT:从GPT-2实践入手解密ChatGPT
  • 20240605解决飞凌的OK3588-C的核心板刷机原厂buildroot不能连接ADB的问题
  • c++手写的bitset
  • 【机器学习系列】深入理解集成学习:从Bagging到Boosting
  • 用FFMPEG对YUV序列进行编辑的笔记
  • 智能投顾:重塑金融理财市场,引领行业新潮流
  • iOS18 新变化提前了解,除了AI还有这些变化
  • 力扣算法题:多数元素 --多语言实现
  • [Kubernetes] 容器运行时 Container Runtime
  • 10进制与二、八、十六进制的转换
  • 日常实习-小米计算机视觉算法岗面经
  • (C++)string模拟实现
  • 类和对象的学习总结(一)
  • 力扣22. 括号生成
  • 检测窗口是否最大化兼容 Win10/11
  • 【qsort函数】
  • python类元编程示例-使用类型注解来检查转换属性值的类框架