如何在Matplotlib中获取轴上单个单位的长度?

如何在Matplotlib中获取轴上单个单位的长度?

为了在Matplotlib中获取轴上单个单位的长度,我们可以遵循以下步骤 −

  • 设置图形大小并调整子图之间和周围的填充。
  • 使用numpy创建 xy 的数据点。
  • 创建一个新图或激活现有图形,使用 图形() 方法。
  • 将一个 ‘~.axes.Axes’ 作为子图布局的一部分添加到图形中。
  • 使用 plot() 方法绘制 xy 数据点。
  • 使用 transData 转换获取单个单位长度。
  • 打印水平和垂直长度。
  • 使用 show() 方法显示图形。

示例

import numpy as np
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

x = np.arange(0, 10, 0.005)
y = np.exp(-x / 2.) * np.sin(2 * np.pi * x)

fig = plt.figure()

ax = fig.add_subplot(111)
ax.plot(x, y)

xy = ax.transData.transform([(0, 1), (1, 0)])\
    -ax.transData.transform((0, 0))

print("垂直长度:", xy[0][1])
print("水平长度: ", xy[1][0])

plt.show()

输出

如何在Matplotlib中获取轴上单个单位的长度?

除了图形外,我们还将在控制台上得到以下输出 −

垂直长度: 269.5
水平长度: 581.25

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程