python科研绘图:面积图

目录

1、面积图

2、堆积面积图


1、面积图

面积图是一种数据可视化图表,用于展示数据随时间或其他有序类别的变化趋势。它与折线图相似,但在展示数据变化的同时,面积图还强调了各个数据点之间的累积关系。这种图表通常通过在折线下方填充颜色来表示数据的累积面积,因此得名"面积图"。

主要特点:

线条表示趋势:面积图的主要线条展示数据的趋势,通常是随时间变化的趋势。这条线可以是平滑的曲线,也可以是直线,具体取决于数据的性质和可视化的目的。

填充面积:面积图通过在趋势线下方填充颜色,强调了数据的累积效果。这有助于观察整体的趋势,并突出高峰和低谷的变化。

用途广泛:面积图通常用于展示时间序列数据,例如股票价格随时间的变化、销售额的季节性波动等。它也可用于比较多个类别的累积数据,突出总体趋势和各类别之间的相对贡献。

import matplotlib.pyplot as plt
import numpy as np
# 准备数据
x = np.array([1, 2, 3, 4, 5])
y1 = np.array([10, 5, 50, 10, 45])
# 创建画布和子图对象
fig, ax = plt.subplots()
# 绘制面积图
ax.fill_between(x, y1)
# 设置图表属性
ax.set_title('Area Chart',font={'family':'Arial', 'size':18}, loc='left')
ax.set_xlabel('Time',font={'family':'Arial', 'size':16}, rotation=10)
ax.set_ylabel('Value')
# 设置x轴刻度朝向为向上
ax.tick_params(axis='x', direction='in')
# 设置y轴刻度朝向为向右
ax.tick_params(axis='y', direction='in')
#刻度标签
plt.xticks(fontproperties = 'Times New Roman', size = 18)
plt.yticks(fontproperties = 'Times New Roman', size = 18)
# #刻度线的大小长短粗细
# plt.tick_params(axis="both", which="major", direction="in", width=1, length=5, pad=5)
# #不显示刻度标签
# ax.axes.xaxis.set_ticklabels([])
# ax.axes.yaxis.set_ticklabels([])
# 显示图表
plt.show()
​

2、堆积面积图

堆积面积图是一种统计图表,用于展示多个数据系列在不同类别或时间段中的累积总和,并以堆积的方式呈现。在这种图表中,每个数据系列都以不同的颜色表示,堆积在彼此之上,形成整体的面积。这种图表通常用于比较总体趋势以及每个数据系列在整体中的相对贡献。

例如,如果你有关于销售额的数据,堆积面积图可以展示每个产品类别或每个销售渠道的销售额随时间的累积变化。每个产品类别或销售渠道的面积代表其贡献,而整个堆积面积图则显示总销售额的变化趋势。

这种图表有助于观察不同部分的相对大小和总体趋势,使人更容易理解数据的分布和演变。

import matplotlib.pyplot as plt
x = [2, 3, 4, 5, 6, 7]
y2 = [[4, 5, 2, 1, 1, 0], [1, 24, 5, 3, 2, 1], [9, 8, 7, 5, 4, 1]]
# 创建画布和子图对象
fig, ax = plt.subplots()
# 绘制面积图
plt.stackplot(x, y2, labels=["A1", "A2", "A3"], colors=["green", "blue", "red"], alpha=0.4)
# 设置图表属性
ax.set_title('Area Chart',font={'family':'Arial', 'size':18}, loc='left')
ax.set_xlabel('Time',font={'family':'Arial', 'size':16}, rotation=0)
ax.set_ylabel('Value')
# 设置x轴刻度朝向为向上
ax.tick_params(axis='x', direction='in')
# 设置y轴刻度朝向为向右
ax.tick_params(axis='y', direction='in')
#刻度标签
plt.xticks(fontproperties = 'Times New Roman', size = 18)
plt.yticks(fontproperties = 'Times New Roman', size = 18)
# #刻度线的大小长短粗细
# plt.tick_params(axis="both", which="major", direction="in", width=1, length=5, pad=5)
# #不显示刻度标签
# ax.axes.xaxis.set_ticklabels([])
# ax.axes.yaxis.set_ticklabels([])
# 显示图表
plt.show()
​

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

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

相关文章

2023最新最全【虚幻4引擎】下载安装零基础教程

1、创建Epic Games账户 我们先打开浏览器,输入以下网址:unrealengine.com 随后点击【立即开始】 选择许可证类型,此处提供三种选项,分别是【游戏】、【非游戏】以及【私人定制】 第一类许可证适用于游戏和商业互动产品&#xff…

STM32笔记—USART

课外知识插入:STM32单片机extern全局变量_stm32全局变量-CSDN博客 如果你把temple定义在A中,然后让A.h和B.h包含在includes.h中,然后把includes.h放在A.c和B.c中单个编译是没有问题的,但是链接的时候会出现问题, “S…

【DevOps】Git 图文详解(一):简介及基础概念

Git 图文详解(一):简介及基础概念 1.简介:认识 Git2.基础概念:Git 是干什么的?2.1 概念汇总2.2 工作区 / 暂存区 / 仓库2.3 Git 基本流程2.4 Git 状态 1.简介:认识 Git Git 是当前最先进、最主…

iApp祁天社区UI成品源码 功能齐全的社区应用

iApp祁天社区UI成品源码是一个非常实用的资源,提供了完整的源代码,可以帮助您快速搭建一个功能齐全的社区应用。 这个源码具有丰富的UI设计,经过精心调整和优化,确保用户体验流畅而舒适。它不仅具备基本的社区功能,如…

jQuery【事件处理器、鼠标事件、表单事件、键盘事件、浏览器事件、事件对象、jQuery遍历】(三)-全面详解(学习总结---从入门到深化)

目录 事件之绑定事件处理器 事件之鼠标事件 事件之表单事件 事件之键盘事件 事件之浏览器事件 事件对象 jQuery遍历 事件之绑定事件处理器 1、 .on() 在选定的元素上绑定一个或多个事件处理函数 $("#button").on("click", function(event){console…

kotlin retrofit

参考博客 【Android】【Kotlin】使用【Retrofit】基本使用 如何在kotlin中正确使用retrofit 将kotlin协程用于网络请求—完整实例,看这一篇就够了 Kotlin协程Retorfit网络请求框架封装

前端的页面结构

前端页面的结构通常由HTML、CSS和JavaScript组成。以下是前端页面的典型结构: HTML(超文本标记语言): HTML是用于定义网页结构的标记语言。它通过使用各种标签和元素来描述页面的内容、布局和组织结构。HTML提供了标题、段落、链接…

《QT从基础到进阶·三十一》事件循环QCoreApplication,QGuiApplication,QApplication

QCoreApplication:为非界面类项目提供一个事件监听循环。 QGuiApplication:以QtGui模块基础开发的界面项目需要应用环境。 QApplication:以QWidget模块基础开发的界面项目需要应用环境。 可以简单总结为,如果是非界面项目开发&am…

C语言测试题:用冒泡法对输入的10个字符由小到大排序 ,要求数组做为函数参数。

编写一个函数: 用冒泡法对输入的10个字符由小到大排序 ,要求数组做为函数参数。 冒泡排序是一种简单的排序算法,它会多次遍历要排序的数列, 每次遍历时,依次比较相邻的两个元素,如果它们的顺序不符合要求…

IoC和DI

Spring 是包含众多工具的 IoC 容器,存的是对象,对象这个词在 Spring 的范围内,称之为 bean IoC 是控制反转 控制权进行了反转,比如对某一个东西的控制权在 A 手上,结果变成了 B ,Spring 管理的是 bean ,所以这里的控制权指的是 bean 的控制权,也就是对象的控制权进行了反转 …

golang学习笔记——查找质数

查找质数 编写一个程序来查找小于 20 的所有质数。 质数是大于 1 的任意数字,只能被它自己和 1 整除。 “整除”表示经过除法运算后没有余数。 与大多数编程语言一样,Go 还提供了一种方法来检查除法运算是否产生余数。 我们可以使用模数 %(百…

Linux动静态库

文章目录 1. 静态库2. 动态库3. 动态库的加载 本章代码gitee仓库:动静态库 1. 静态库 Linux开发工具gcc/g篇,此篇文章讲过动静态库的基本概念,不了解的可以先看一下这篇文章。 现在我们先来制作一个简单的静态库 mymath.h #pragma once#i…

VSCode 好用的插件分享

文章目录 Introlistcode runner 【在文本编辑器中编辑好各类语言的源代码,然后一键运行】gitlens - 【git提交信息即时查看,类似IDEA中的 show annotation】还有更多,会日常补充。 Intro 大四毕业前,我只有一台dell latitude 455…

Web前端—小兔鲜儿电商网站底部设计及网站中间过渡部分设计

版本说明 当前版本号[20231116]。 版本修改说明20231116初版 目录 文章目录 版本说明目录底部(footer)服务帮助中心版权 banner侧边栏圆点 新鲜好物(goods)标题 底部(footer) 结构:通栏 >…

Python框架篇(2):FastApi-参数接收和验证

提示: 如果想获取文章中具体的代码信息,可在微信搜索【猿码记】回复 【fastapi】即可。 1.参数接收 1.1 路径参数(不推荐) 1.代码清单 在app/router下,新增demo_router.py文件,内容如下: from fastapi import APIRouterrouter APIRouter( prefix&qu…

ios swift sqlite3 简单使用

一.创建Person类 import UIKitclass Person: NSObject {var name:String? nilvar sex:String? nilvar age:String? niloverride func setValue(_ value: Any?, forUndefinedKey key: String) {}} 二.在使用的地方导入sqlite.3头文件,例如方法都在viewcontr…

【二分法】

二分法可以在有序排列中&#xff0c;通过不断对半切割数据&#xff0c;提高数据查找效率。 lst [1,4,6,7,45,66,345,767,788,999] n 66 left 0 right len(lst)-1 while left < right: #边界&#xff0c;当右边比左边还小的时候退出循环 mid (left right)//2 …

adb shell settings高级指令设置系统属性所有的指令汇总+注释

adb shell settings高级指令设置系统属性所有的指令汇总 目录 系统设置&#xff08;system&#xff09; 安全设置&#xff08;secure&#xff09; 全局设置&#xff08;global&#xff09; 删除设置 帮助 示例应用 屏幕超时时间 自动旋转屏幕 通知光 触觉反馈 动…

2023年05月 Python(六级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 明明每天坚持背英语单词,他建立了英语单词错题本文件“mistakes.txt”,将每天记错的单词增加到该文件中,下列打开文件的语句最合适的是?( ) A: f = open(“mistakes.txt”) B: …

2023.11.16 hivesql高阶函数之开窗函数

目录 1.开窗函数的定义 2.数据准备 3.开窗函数之排序 需求:用三种排序方法查询学生的语文成绩排名,并降序显示 4.开窗函数分组 需求:按照科目来分类,使用三种排序方式来排序学生的成绩 5.聚合函数与分组配合使用 6.聚合函数同时和分组以及排序关键字配合使用 --需求1&…