在 Matplotlib 中创建趋势线
在这篇文章中,我们将看一下有关趋势线的简短演示,还会看一下如何在 Matplotlib 中的图形上创建线性趋势线。
使用 polyfit() 方法在 Matplotlib 中创建趋势线
趋势线只是我们通过图中的数据点绘制的一条线。 为了估计趋势,我们使用它们来尝试做出预测。
让我们从在 Python 中导入所需的库开始。
import matplotlib.pyplot as plot
import numpy as np
我们有一个摄氏温度数据向量和一个电压数据向量。 如果您有 Excel 电子表格、文本文件或 CSV 文件,则可以轻松地将其导入代码中。
在我们的例子中,我们只是手动输入了七个数据点。 我们将绘制温度作为电压的函数。
T=[20,30,40,50,60,75,100]
V=[1.02,1.53,2.05,2.55,3.07,3.56,4.05]
源代码:
import matplotlib.pyplot as plot
##### Data vectors
T=[20,30,40,50,60,75,100]
V=[1.02,1.53,2.05,2.55,3.07,3.56,4.05]
##### Plot data
plot.plot(V,T,'b*')
plot.xlabel('Voltage(V)')
plot.ylabel('Temp(C)')
plot.grid()
plot.show()
输出:
现在我们将创建一条趋势线。 让我们使用 numpy 的 polyfit()
方法计算趋势线,该方法将创建多项式拟合线。
polyfit()
方法接受 x 轴、y 轴或 X 和 Y 坐标的边。 第三个参数接受顺序,我们将传递给它 1,显然 1 是线性的,所以 2 将是二次的。
coeff=np.polyfit(V,T,1) ## 1=linear
将该系数的第一个元素存储到 m 变量中,然后 b 是 y 轴截距。
m=coeff[0]
b=coeff[1]
使用以下语法绘制趋势线。 我们需要调用 linspace() 方法,这个方法需要一些具有百个数据点的起点和终点。
Ttrend 变量存储一个等式,这个等式将有助于创建趋势线。
Vtrend=np.linspace(V[0],V[-1],100)
Ttrend=m* Vtrend+b
源代码:
import matplotlib.pyplot as plot
import numpy as np
##### Data vectors
T=[20,30,40,50,60,75,100]
V=[1.02,1.53,2.05,2.55,3.07,3.56,4.05]
##### Plot data
plot.plot(V,T,'b*')
plot.xlabel('Voltage(V)')
plot.ylabel('Temp(C)')
plot.grid()
####Compute the trendline
coeff=np.polyfit(V,T,1) ## 1=linear
m=coeff[0]
b=coeff[1]
Vtrend=np.linspace(V[0],V[-1],100)
Ttrend=m* Vtrend+b
plot.plot(Vtrend,Ttrend,'r')
plot.show()
输出:
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串