Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Matplotlib-未显示子批次_Python_Matplotlib - Fatal编程技术网

Python Matplotlib-未显示子批次

Python Matplotlib-未显示子批次,python,matplotlib,Python,Matplotlib,我想把一个普通的绘图变成一个子绘图。下面是绘图的代码,它可以工作: import numpy as np import pandas as pd import matplotlib.pyplot as plt from matplotlib.figure import Figure d = {'A': [1, 2, 3, 4, 5, 6], 'B': [-2.5, -1.00, .25, 1.56, .75, 1.20]} df = pd.DataFrame(data=d) x = np.

我想把一个普通的绘图变成一个子绘图。下面是绘图的代码,它可以工作:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.figure import Figure


d = {'A': [1, 2, 3, 4, 5, 6], 'B': [-2.5, -1.00, .25, 1.56, .75, 1.20]}
df = pd.DataFrame(data=d)

x = np.arange(0, 999, 0.1)

y1 = -.75
y2 = .75

plt.fill_between(x, y1, y2, color='lawngreen', alpha='.6')


plt.scatter(df.A, df.B)
plt.plot(df.A, df.B)
plt.axhline(y=0, color='black')
plt.xticks(np.arange(0, 999))
plt.ylim([-4, 4])
plt.xlim([0, df.A.max() + 1])

plt.show()
然后我试着把它变成一个子地块。控制台没有抛出任何错误,只是没有显示任何绘图

fig = Figure()
ax = fig.add_subplot(111)

x = np.arange(0, 999, 0.1)

y1 = -.75
y2 = .75
ax.fill_between(x, y1, y2, color='lawngreen', alpha='.6')

ax.scatter(df.A, df.B)
ax.plot(df.A, df.B)

ax.axhline(y=0, color='black')
ax.set_xticks(np.arange(0, 999))
ax.set_ylim([-4, 4])
ax.set_xlim([0, df.A.max() + 1])
plt.show()
我做错了什么?

fig=plt.figure()
代替
fig=figure()

您的代码是:

fig = plt.figure()
ax = fig.add_subplot(111)

x = np.arange(0, 999, 0.1)

y1 = -.75
y2 = .75
ax.fill_between(x, y1, y2, color='lawngreen', alpha='.6')

ax.scatter(df.A, df.B)
ax.plot(df.A, df.B)

ax.axhline(y=0, color='black')
ax.set_xticks(np.arange(0, 999))
ax.set_ylim([-4, 4])
ax.set_xlim([0, df.A.max() + 1])
plt.show()
输出: