1分钟带你学会使用Python操作 xlsx 文件绘制面积图

​我们工作中经常要处理海量的数据,如果没有一个直观的可视化工具,怎么可能一眼就看出数据背后的故事呢?数据可视化显得越来越重要,数据分析已经成了现代人必备的技能。

今天来和大家分享一个超有趣的数据可视化方法——绘制面积图!面积图是一种非常直观的数据展示方式,能够让你一眼就看出数据随时间变化的趋势。

你可以根据自己的喜好选择不同的颜色来表示不同的数据系列,然后在时间轴上画出每个数据点的位置。最后,用线条将这些点连接起来,形成一个连续的曲线。在这个过程中,你可以想象自己正在画一幅画,每个数据点就像是你画笔下的颜料滴,最终汇聚成一幅美丽的画作。

你可以通过面积图来比较不同数据系列之间的差异,找出数据变化的趋势和规律,甚至可以预测未来的数据走向。这些功能让面积图成为了数据分析和可视化领域的得力助手。

接下来,我将以一个实例来演示如何操作xlsx文件并绘制面积图:

# 导入绘制图形模块from openpyxl import Workbookfrom openpyxl.chart import AreaChart, Reference# 创建工作簿对象wb = Workbook(write_only=True)ws = wb.create_sheet("月销量")    # 获取工作簿的活动表,默认是第一个sheet表# 准备数据rows = [    ["序号", "产品A", "产品B"],    [1, 25, 57],    [2, 30, 48],    [3, 40, 45],    [4, 50, 20],    [5, 60, 50]]# 将数据写入到工作表中for row in rows:    ws.append(row)# 创建面积图对象chart = AreaChart()# 设置图标标题chart.title = "面积图"# 设置图表样式chart.style = 14# 设置x轴和y轴的标题chart.x_axis.title = "月份"chart.y_axis.title = "利润"# data和cats分别设置数据集的范围和类别的范围,我们手工在Excel里作图也需要选定一个单元格区域,通过python写程序也是如此# 在选定区域时,需要指定开始列和结束列,开始衡和结束行data = Reference(ws, min_col=2, min_row=1, max_row=7, max_col=3)cats = Reference(ws, min_col=1, min_row=2, max_row=7)chart.add_data(data, titles_from_data=True)chart.set_categories(cats)# 设置图表防止的位置ws.add_chart(chart, "A10")wb.save("./面积图.xlsx")

​执行效果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/285716.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis中文乱码问题

最近排查问题,发现之前的开发将日志写在redis缓存中(不建议这样做),我在查看日志的时候发现没办法阅读,详细是这样的: 查阅资料后发现是进制问题,解决方法是启动客户端的时候将redis-cli改为red…

流畅的 Python 第二版(GPT 重译)(四)

第二部分:函数作为对象 第七章:函数作为一等对象 我从未认为 Python 受到函数式语言的重大影响,无论人们说什么或想什么。我更熟悉命令式语言,如 C 和 Algol 68,尽管我将函数作为一等对象,但我并不认为 Py…

【机器学习】机器学习是什么?

文章目录 前言 机器学习 序列学习和对抗学习有什么不同 总结 前言 在当今快速发展的科技时代,人工智能已经成为推动社会进步的重要力量。机器学习,作为人工智能领域的一个重要分支,它的核心能力在于使计算机系统能够从数据中学习规律&…

Python RPA简单开发实践(selenium登陆浏览器自动输入密码登陆)

打开csdn博客,简单版 class BS:def __init__(self, url):self.url url# self.password password# self.username usernamedef login_url(self):from selenium import webdriver# 不自动关闭浏览器option webdriver.ChromeOptions()option.add_experimental_opt…

Vue 若依框架 form-generator添加表格组件和动态表单组件

效果图: 在若依框架自带的流程表单配置基础上添加这两个组件 config.js // 表单属性【右面板】 export const formConf {formRef: elForm,formModel: formData,other: other,size: medium,labelPosition: right,labelWidth: 100,formRules: rules,gutter: 15,dis…

LeetCode每日一题[c++]-322.零钱兑换

题目描述 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无…

游戏提示steam_api64.dll丢失怎样修复?教你5种快速修复的方法

在计算机系统中,如果未能成功找到或加载steam_api64.dll文件,可能会引发一系列的问题和故障现象。这个特定的DLL文件是Steam平台的核心组件之一,对于运行基于Steam平台的游戏或应用至关重要。当系统提示“找不到steam_api64.dll”时&#xff…

抖音视频关键词爬虫批量采集软件|视频提取下载工具

视频关键词批量采集软件 — 助力您快速获取所需视频 主要功能: 关键词批量提取视频和单独视频提取,提取后下载功能。 功能解析: 1. 关键词批量提取视频的解析 通过输入关键词进行视频搜索和提取。例如,输入“汽车配件”&#x…

N9010B EXA 信号分析仪 10 Hz 至 44 GHz

N9010B EXA 信号分析仪 10 Hz 至 44 GHz 产品综述 <<<<频率范围&#xff1a;10 Hz 至 44 GHz>>> keysight N9010B EXA 信号分析仪&#xff0c;10 Hz 至 44 GHz无论是增强产品性能还是提高测试吞吐量&#xff0c;您的通用型信号分析仪都要有能力满足各…

为什么电商系统一定要跟企业ERP做数据对接?

一篇文章告诉你&#xff0c;为什么电商系统一定要跟企业ERP做数据对接&#xff1f; 在电商日益发展的情况下&#xff0c;每个电商企业的单量越来越大。但是电商系统对于财务来说并不友好&#xff0c;所以企业会另外上一套财务系统方便财务做账和企业内部管理。那如果还是按照之…

后端常问面经之操作系统

请简要描述线程与进程的关系,区别及优缺点&#xff1f; 本质区别&#xff1a;进程是操作系统资源分配的基本单位&#xff0c;而线程是任务调度和执行的基本单位 在开销方面&#xff1a;每个进程都有独立的代码和数据空间&#xff08;程序上下文&#xff09;&#xff0c;程序之…

产品经理面试自我介绍,这3大错误千万别犯!

金三银四求职季&#xff0c;你是不是也有面试的冲动&#xff01;但面试并不是头脑一热就能取得好结果&#xff0c;在此之前&#xff0c;必须得有周全的准备&#xff0c;才能应对好面试官的“连环问”&#xff01; 所以&#xff0c;今天这篇产品经理面试干货分享给大家~ 今天文…

MySQL-1.数据库的基本操作

1. 数据库的基本操作 show databases; information_schema&#xff1a;信息图式&#xff0c;存储服务器管理数据库的信息 mysql&#xff1a;存放系统信息&#xff0c;用户名密码等 performance_schema&#xff1a;性能图式 sys&#xff1a;系统文件 1.1 创建数据库-studen…

流畅的 Python 第二版(GPT 重译)(六)

第三部分&#xff1a;类和协议 第十一章&#xff1a;一个 Python 风格的对象 使库或框架成为 Pythonic 是为了让 Python 程序员尽可能轻松和自然地学会如何执行任务。 Python 和 JavaScript 框架的创造者 Martijn Faassen。 由于 Python 数据模型&#xff0c;您定义的类型可以…

【设计模式】实战篇

目录标题 【实战一】模板方法模式抽象类子类 【实战一】模板方法模式 抽象类 定义一个抽象类&#xff1a;FarmWorkNodeRecord&#xff1a;表示其记录是用来操作计划的节点对象的。 public abstract class FarmWorkNodeRecordService {// 模拟Mapperprivate String plantPlan…

Arduino中的map函数

一、案例 val analogRead(dyPin); //读取模拟口的模拟量数值 dyValuemap(val,0,1023,0,500);//这个函数是将电位器调节的模拟量的值按比例转换成对应的电压量 问题&#xff0c;为什么不是0~499呢&#xff1f; 其实也行↓ 当map(val, 0, 1023, 0, 500)被调用时&#xff0…

关于异业联盟模式做成小程序的可行性分析

随着移动互联网的快速发展&#xff0c;小程序作为一种轻量级应用&#xff0c;受到了越来越多企业和用户的青睐。而异业联盟模式则是一种有效的商业合作方式&#xff0c;能够实现资源共享、优势互补和共同发展。将异业联盟模式做成小程序&#xff0c;不仅可以提高用户体验&#…

[论文笔记] Dual-Channel Span for Aspect Sentiment Triplet Extraction

一种利用句法依赖和词性相关性信息来过滤噪声&#xff08;无关跨度&#xff09;的基于span方法。 会议EMNLP 2023作者Pan Li, Ping Li, Kai Zhang团队Southwest Petroleum University论文地址https://aclanthology.org/2023.emnlp-main.17/代码地址https://github.com/bert-ply…

海外盲盒APP系统开发,探寻盲盒的海外机遇

目前&#xff0c;盲盒在我国受到了消费者的欢迎。在各类影视动漫的火热下&#xff0c;热衷于娱乐消费的年轻人成为了盲盒的主要消费人群。 在国外&#xff0c;盲盒也同样深受海外消费者的喜爱。近几年&#xff0c;盲盒在海外的销售量急速上升&#xff0c;创下了新高。 随着盲…

Windows 7 一键恢复 - 联想拯救系统

Windows 7 一键恢复 - 联想拯救系统 1. 联想拯救系统1.1. OEM 分区1.2. 一键恢复 References 1. 联想拯救系统 1.1. OEM 分区 计算机 -> 管理 -> 存储 -> 磁盘管理 1.2. 一键恢复 重新启动电脑 F11 -> 从初始备份恢复 References [1] Yongqiang Cheng, https…