matplotlib 如何在每个子图中绘制轴线

w46czmvw  于 2023-11-22  发布在  其他
关注(0)|答案(1)|浏览(113)

我试图添加一个axlineslope=1到一系列子图中的每一个。

  • 我遵循axline示例,但它似乎不适用于我的修改。
  • This似乎是SO上最接近的问题,但没有回答我的问题

代码尝试和错误

01.如axline示例:

import matplotlib.pyplot as plt
import pandas as pd

fig, axes = plt.subplots(4, 2, sharex=True, sharey=True, figsize=(12, 10))
plt.xlim([-5, 10])
plt.ylim([-5, 10])
for ax in axes.flat:
    ax.axline((0,0), slope=1, color='r', linewidth=2, linestyle='--')

字符串
“AxesSubplot”对象没有属性“axline”

02.在每个子图中:

fig, axes = plt.subplots(4, 2, sharex=True, sharey=True, figsize=(12, 10))
row, col = 0, 0
for q in questions: # questions defined by my data
    question_scatter(df, q, row, col) # UDF to create a scatter plot in axes[row, col]
    axes[row, col].axline((0,0), slope=1, color='r', linewidth=2, linestyle='--')
    if row < 3:
        row += 1
    else:
        row = 0
        col += 1


“AxesSubplot”对象没有属性“axline”

03.全局应用:

fig, axes = plt.subplots(4, 2, sharex=True, sharey=True, figsize=(12, 10))
axes.axline((0,0), slope=1, color='r', linewidth=2, linestyle='--')


numpy.ndarray“对象没有属性”axline“

x6492ojm

x6492ojm1#

正如@suraj shourie指出的,如果我将matplotlib升级到v3.3.0,我的第一个解决方案就可以工作。
完整性:

$ pip install  -U matplotlib==3.3.0

个字符

相关问题