python绘制趋势线

趋势线

趋势线是用来显示数据趋势或者预测未来发展方向的一种图形表示方法。在统计学和数据分析中,趋势线通常是通过拟合数据点来找到一条最符合数据整体趋势的直线、曲线或者其他形状。常见的趋势线拟合方法包括线性回归、多项式回归、指数平滑等。

趋势线在金融分析、市场预测、销售趋势分析、科学研究等领域都有广泛的应用。通过趋势线,人们可以更清晰地了解数据的走势,从而做出更加准确的决策。

在图表中,趋势线通常以一条穿过数据点的曲线或直线的形式呈现,使得观察者可以更容易地识别出数据的趋势方向。

示例代码

import numpy as np
import matplotlib.pyplot as plt# 生成一些示例数据
x = np.linspace(0, 10, 100)
y = 2 * x + np.random.normal(0, 1, 100)  # 线性上升的数据,加入一些噪声# 绘制原始曲线
plt.plot(x, y, label='Data')# 使用线性回归拟合趋势线
slope, intercept = np.polyfit(x, y, 1)
trendline = slope * x + intercept# 绘制趋势线
plt.plot(x, trendline, color='red', linestyle='--', label='Trendline')# 添加图例和标签
plt.legend()
plt.title('Data with Trendline')
plt.xlabel('X')
plt.ylabel('Y')# 显示图形
plt.show()

结果展示

在这里插入图片描述

补充:横轴不连续的趋势图

这里主要用到brokenaxes库,可以使坐标轴不连续。

示例代码

import numpy as np
import matplotlib.pyplot as plt
from brokenaxes import brokenaxes# 生成一些示例数据
x = np.linspace(0, 10, 100)
y = 2 * x + np.random.normal(0, 1, 100)  # 线性上升的数据,加入一些噪声# 将数据分成两段
x1, y1 = x[:40], y[:40]
x2, y2 = x[60:], y[60:]# 创建一个BrokenAxes对象
bax = brokenaxes(xlims=((0, 4), (6, 10)), hspace=0.05)# 绘制第一段趋势线
slope1, intercept1 = np.polyfit(x1, y1, 1)
trendline1 = slope1 * x1 + intercept1
bax.plot(x1, y1, label='Segment 1', color='blue')
bax.plot(x1, trendline1, color='red', linestyle='--', label='Trendline 1')# 绘制第二段趋势线
slope2, intercept2 = np.polyfit(x2, y2, 1)
trendline2 = slope2 * x2 + intercept2
bax.plot(x2, y2, label='Segment 2', color='orange')
bax.plot(x2, trendline2, color='green', linestyle='--', label='Trendline 2')# 添加标题和标签
bax.set_xlabel('X Label')
bax.set_ylabel('Y Label')
bax.set_title('Data with Trendline (Broken Axes)')# 显示图例
bax.legend(loc='lower right')# 显示图形
plt.show()

结果展示

在这里插入图片描述

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

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

相关文章

OpenHarmony教程指南—Ability的启动模式

介绍 本示例展示了在一个Stage模型中,实现standard、singleton、specified多种模式场景。 本实例参考开发指南 。 本实例需要使用aa工具 查看应用Ability 模式信息。 效果预览 使用说明 1、standard模式: 1)进入首页,点击番茄…

贪心算法详解及机器人运动应用Demo

一、引言 贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的算法。贪心算法在有最优子结构的问题中尤为有效。今天,我们将通过一个机器人运动的Demo来详细解析贪心算…

文心一言眼中的ChatGPT是什么样的

Q: 你好文心一言,请说一说你眼中的chatgpt A: 在我眼中,ChatGPT是一种非常先进和强大的自然语言处理模型,它展示了人工智能技术的显著进步。ChatGPT拥有出色的语言理解和生成能力,能够与用户进行流畅、自然的对话,并尝…

[c/c++] const

const 和 #define 的区别 ? const 和指针一块出现的时候,到底谁不能修改 ? const 和 volatile 能同时修饰一个变量吗 ? const 在 c 中的作用 ? 1 const 和 #define 的区别 const 和 #define 的相同点: (1) 常数 const 和 #define 定…

lanqiao:合根植物

题目描述: 代码实现:

私域商业模式创新:消费增值引领企业业绩飙升

大家好,我是吴军,专注于私域商业模式的深度探索。今天,我要分享的是一个极具启发性的客户故事。这家企业,在短短一个月内,业绩飙升至上百万级别,用户活跃度同样瞩目,日均在线用户稳定在八万至十…

关键信息标红

效果&#xff1a; 导入一个文本文件到textEdit中&#xff0c;对指定的key关键字标红处理或者对关键字所在的行进行整行标红处理 实现&#xff1a; #ifndef WIDGET_H #define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_EN…

Django-聚合查询

Django 使用聚合查询前要先从 django.db.models 引入 Avg、Max、Min、Count、Sum&#xff08;首字母大写&#xff09;。 from django.db.models import Avg,Max,Min,Count,Sum # 引入函数 res models.Book.objects.aggregate(Avg("price")) print(res, type(res…

华为数通学习笔记(一):数据通信网络基础

华为数通学习笔记 前言&#xff1a;在学习大数据的过程中&#xff0c;我发现很多地方需要用到网络知识点&#xff0c;由于我哥考取了华为数通 HCIE 证书&#xff0c;目前正在一家大公司担任技术负责人&#xff0c;因此借此机会我要向他学习这方面的知识点&#xff0c;希望能够拓…

dbeaver更换下载驱动地址

DBeaver 是一个免费开源的数据库工具&#xff0c;提供对多种数据库系统的支持&#xff0c;包括 MySQL、PostgreSQL、Oracle、SQLite 等。它是一个通用的数据库管理工具&#xff0c;可以帮助用户连接、管理和查询各种类型的数据库。 下载地址 使用dbeaver连接数据库时需要先下…

【Spring Boot 3】获取已注入的Bean

【Spring Boot 3】获取已注入的Bean 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术总是要花费或…

leetcode —— 多数元素

1 多数元素 给定一个大小为 n 的数组 nums &#xff0c;返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示例 1&#xff1a; 输入&#xff1a;nums [3,2,3] 输出&#xff…

Linux:kubernetes(k8s)探针LivenessProbe的使用(9)

他做的事情就是当我检测的一个东西他不在规定的时间内存在的话&#xff0c;我就让他重启&#xff0c;这个检测的目标可以是文件或者端口等 我这个是在上一章的基础之上继续操作&#xff0c;我会保留startupProbe探针让后看一下他俩的执行优先的一个效果 Linux&#xff1a;kuber…

prometheus监控zookeeper方案

这里要求zookeeper版本必须达到3.6或以上&#xff0c;用的是官方自带的监控信息。 官方下载地址 https://zookeeper.apache.org/releases.html#download 然后在zookeeper的配置文件&#xff0c;比如zoo.cfg最后面加上这一段 metricsProvider.classNameorg.apache.zookeeper.…

洛谷P2233 公交车路线

本题题号特殊&#xff0c;相对简单。 题目描述 在长沙城新建的环城公路上一共有 88 个公交站&#xff0c;分别为 A、B、C、D、E、F、G、H。公共汽车只能够在相邻的两个公交站之间运行&#xff0c;因此你从某一个公交站到另外一个公交站往往要换几次车&#xff0c;例如从公交站…

【C++从0到王者】第五十站:B树

文章目录 一、内查找与外查找1.内查找2.外查找 二、B树概念三、B树的插入1.B树的插入分析2.B树插入总结3.插入代码实现4.B树满树和最空时候的对比5.B树的删除6.遍历B树7.B树的性能分析 一、内查找与外查找 1.内查找 像我们之前所用的在内存中的查找就是内查找 种类数据格式时…

logrotate日志轮转

logrotate配置文件&#xff1a; 主配置文件&#xff1a; /etc/logrotate.conf (决定每个日志文件如何轮转) 配置日志轮转 vim /etc/logrotate.conf weekly #轮转的周期 rotate 4 #保留4份 create #轮转后创建新文件 …

C#,基于密度的噪声应用空间聚类算法(DBSCAN Algorithm)源代码

1 聚类算法 聚类分析或简单聚类基本上是一种无监督的学习方法&#xff0c;它将数据点划分为若干特定的批次或组&#xff0c;使得相同组中的数据点具有相似的属性&#xff0c;而不同组中的数据点在某种意义上具有不同的属性。它包括许多基于差分进化的不同方法。 E、 g.K-均值…

学习经验分享【NO.21】近期中文核心期刊目标检测论文理解

前言&#xff1a;最近比较忙&#xff0c;很久没有翻看知网论文了&#xff0c;看了下yolo改进相关的论文发现基于YOLOv5改进的核心期刊论文还是层出不穷&#xff0c;并没有因为已经是2024年了YOLOv9的出现而导致论文不好发&#xff0c;同时YOLOv8的论文也出了不少&#xff0c;所…

火柴排队(逆序对 + 离散化)

505. 火柴排队 原题链接 思路 如下是画图分析的一些过程 在这里贪心的思路是排序&#xff0c;然后两个数组都是从小到大那样对应的话最终的答案可达到最小 而我们只能交换相邻的火柴&#xff0c;故在这里先假设一个简化版本&#xff0c;即A有序&#xff0c;而只需要对B进行…