使用Python中的Plotly绘制等高线图

王林
发布: 2023-08-26 12:09:05
转载
2097 人浏览过

在Python中Plotly被称为“plotly.py”。它是一个免费的开源绘图库,构建在“plotly.js”之上。它支持 40 多种独特的图表类型。该库主要用于金融、地理、科学、3维和数据分析应用。

它可用于绘制各种类型的图表和图形,如散点图、线图、条形图、箱线图、直方图、饼图、面积图、箱线图、直方图、热图、子图、多轴等.

情节安装

在命令提示符下执行以下命令来安装plotly模块。这是从 PyPi 安装最新的 Plotly 包的简单方法。

pip install plotly
登录后复制

等高线图用于通过绘制常量 z 切片(称为等高线)来可视化二维表面中的三维数据。

它是在轮廓函数 (Z) 的帮助下绘制的,该函数是两个输入 X 和 Y(X 轴和 Y 轴坐标)的函数。

Z = fun(x,y)
登录后复制

ploty模块提供了一个名为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:默认情况下无,用于计算等高线(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()
登录后复制

输出

使用Python中的Plotly绘制等高线图

这里 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()
登录后复制

输出

使用Python中的Plotly绘制等高线图

这里的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()
登录后复制

输出

使用Python中的Plotly绘制等高线图

带色阶的等高线图

色标是plotly.graph_objects.Contour()函数的一个参数,用于设置色标。

示例

我们举个例子,将调色板名称字符串“Earth”设置为 colorscale 参数。

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()
登录后复制

输出

使用Python中的Plotly绘制等高线图

我们使用不同的 z 函数绘制了等高线图。

以上是使用Python中的Plotly绘制等高线图的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!