【问题标题】:How does this Matplotlib code snippet work这个 Matplotlib 代码片段是如何工作的
【发布时间】:2021-12-11 02:54:38
【问题描述】:

我对使用 Pandas 和 Matplotlib 编程比较陌生。

我在这个论坛上找到了这段代码sn-p,并成功使用,但想更好地理解它。

fig, ax = plt.subplots(figsize=(20,20))
new_zinv2.plot(ax=ax, x_compat=True)

new_zinv2 是我的数据框的名称。

我想了解一下plot方法里面的内容,因为这是我提取的sn-p代码。 "ax=ax" 和 x_compat=True 是什么意思?

我已尝试阅读文档,但我仍然不明白(我想知道它是如何工作以及为什么工作)。

谢谢

【问题讨论】:

  • 之所以有效,是因为您的pandas.DataFrame 有一个.plot 方法(例如pandas.DataFrame.plot)并且它有一个ax 参数。 pandas.DataFrame.plot 使用 matplotlib 作为默认的绘图后端。

标签: python pandas matplotlib


【解决方案1】:

我将为 clarity 重命名变量,但这不会改变代码。

第一行:

import matplotlib.pyplot as plt
my_fig, my_ax = plt.subplots(figsize=(20, 20))

使用 matplotlib 中的函数创建两个对象、一个图形和一组子图。由于此函数返回 两个 事物,my_fig, my_ax = 的赋值将返回的第一个事物(图)分配给变量 my_fig,并将返回的第二个事物(suplots 集)分配给变量 my_ax。

然后是第二行:

new_zinv2.plot(ax=my_ax, x_compat=True)

使用 DataFrame 函数进行绘图。 plot 函数采用各种参数,您可以使用这些参数来更改默认值或绘图方式。 ax=my_ax 告诉 DataFrame.plot 在哪里绘制图形,在这种情况下,它将在我们已经在第一行创建的 (20,20) 子图上绘制 DataFrame,我们分配给变量 my_ax,而不是它自己的品牌新的默认数字。 x_compat=True 是另一个您可以指定的参数,它只接受一个布尔值,在这种情况下,它只是修改了 x-ticks 为datetime 值显示的方式。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 2014-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多