使用 Plotly 在 Python 中绘制等值线图
在 Python 中,Plotly被称为“plotly.py”。它是一个免费的开源绘图库,构建在“plotly.js”之上。它支持超过 40 种独特的图表类型。该库主要用于金融、地理、科学、三维和数据分析应用。
它可用于绘制各种类型的图表和图形,如散点图、折线图、条形图、箱线图、直方图、饼图、面积图、箱线图、直方图、热力图、子图、多轴等。
安装 plotly
在命令提示符中执行以下命令以安装 plotly 模块。这是一种从 PyPi 安装Plotly最新软件包的简单方法。
pip install plotly
等值线图用于通过绘制称为等值线的恒定 z 切片来可视化二维表面上的三维数据。
它借助等值线函数 (Z) 绘制,该函数是两个输入 X 和 Y(X 轴和 Y 轴坐标)的函数。
Z = fun(x,y)
ploty 模块提供了一个名为 Contour 的函数,用于绘制等值线图。
contour() 函数
plotly.graph_objects 提供了一个名为 contour() 的方法来绘制等值线图。该函数具有 50 多个参数,这里我们只讨论几个参数。
语法
plotly.graph_objects.Contour(z=None,x=None,y=None,arg=None,colorbar=None,hoverinfo=None,x=None,y=Non,**kwargs)
参数
z:默认为 None,用于计算等值线(z 数据)的二维值列表。
x:x 坐标,默认为 None。
y:y 坐标,默认为 None。
使用二维数组作为 z 函数的等值线图
使用二维数组作为 z 函数绘制等值线图。
示例
在本例中,我们将使用二维数组绘制一个简单的等值线图。
import plotly.graph_objects as go fig = go.Figure(data = go.Contour(z=[[4.3, 0.2], [-1.3, 0.9], [-0.32, 7.3], [4.6, 0.203]])) fig.show()
输出

这里 4X2 数组表示 z 函数。
带有 X 和 Y 坐标的等值线图
使用 X 和 Y 坐标以及 z 函数(二维数组)绘制等值线图。
示例
在本例中,我们将使用二维数组以及 X 和 Y 坐标绘制等值线图。
import plotly.graph_objects as go fig = go.Figure(data = go.Contour(z=[[4.3, 9, 0.2], [-1.3, 2.3, 0.9], [-0.32, 7.3, 0.23], [4.6, 0.203, 0.34]], x=[-8, -3, -2,-1, 0.23], # horizontal axis y=[0, 2, 5, 7, 3]# vertical axis )) fig.show()
输出

这里 x 和 y 坐标分别表示水平轴和垂直轴。
使用 Numpy 绘制等值线图
使用 numpy 绘制等值线图,这里我们将使用 numpy.meshgrid() 函数生成 X 和 Y 坐标的数组。
示例
z 函数将是使用 numpy.sqrt() 函数计算 x 和 y 值的平方根之和。
import numpy as np import plotly.graph_objects as go xlist = np.linspace(-3.0, 3.0, 100) ylist = np.linspace(-3.0, 3.0, 100) # create a mesh X, Y = np.meshgrid(xlist, ylist) Z = np.sqrt(X**2 + Y**2) trace = go.Contour(x = xlist, y = ylist, z = Z) data = [trace] fig = go.Figure(data) fig.show()
输出

带有颜色比例尺的等值线图
颜色比例尺是 plotly.graph_objects.Contour() 函数的一个参数,用于设置颜色比例尺。
示例
让我们举一个例子,并将调色板名称字符串“Earth”设置为颜色比例尺参数。
import plotly.graph_objects as go
import numpy as np
def f(x, y):
return np.sin(x) ** 10 + np.cos(10 + y * x) * np.cos(x)
xlist = np.linspace(-3.0, 3.0, 100)
ylist = np.linspace(-3.0, 3.0, 100)
# A mesh is created with the given co-ordinates by this numpy function
X, Y = np.meshgrid(xlist, ylist)
Z = f(X,Y)
fig = go.Figure(go.Contour(x = xlist, y = ylist, z = Z, colorscale='Earth'))
fig.show()
输出

我们已经使用不同的 z 函数绘制了等值线图。
数据结构
网络
关系型数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP