首页 > 解决方案 > 如何创建一个紧贴数据的 matplotlib 轴?

问题描述

我正在努力创建一个遵循等高线图的弯曲轴。假设我有一个如图所示的等高线图:

在此处输入图像描述

如何强制轴跟随轮廓,如下所示?

在此处输入图像描述

我在页面末尾找到带有类似内容的链接,但我不知道该怎么做。

这是我为创建图形而编写的代码。

import matplotlib.pyplot as plt
from numpy import linspace, meshgrid, zeros

n = 100
x = linspace(-1, 1, n)
y = linspace(-1, 1, n)
X, Y = meshgrid(x, y)
Z = zeros(X.shape)
for i in range(n):
    X[i, :] = linspace(-1. + i / n * 0.2, 1. - i / n * 0.2, n)
    Y[:, i] = linspace(-x[i] ** 2 - 2, x[i] ** 2 + 2, n)
    for j in range(n):
        Z[i, j] = x[i] ** 2 + y[j] ** 2

fig, ax = plt.subplots()

ax.contour(X, Y, Z, 10, linewidths=0.5, colors='k')
c = ax.contourf(X, Y, Z, 100, cmap=plt.cm.jet)
ax.set_xlabel("x (m)")
ax.set_xlabel("y (m)")
plt.show()

谢谢您的帮助。:)

标签: python-3.xmatplotlibcontour

解决方案


推荐阅读