我想要做的是在子图中的2x2图表.然后,对于每个图,我将使用两个y轴.因此,我为每个图使用了twinx()方法.您在我分享的图中看到的问题是它没有显示第一行的xlabel和xticks.对于第二行,一切都很好.我在图中用红色字体指定了问题("No xlabel and xticks !!!").
每个图都有自己的x轴和y轴,并且没有共享.
我已经调整了很多代码并缩小了问题制定者的范围.这是因为我在上排使用twinx().如果我尝试删除辅助y轴,一切都恢复正常,上行的xlabel和ylabel正确显示.
我不知道是什么问题!
这是我正在处理的代码.
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from io import StringIO
s = StringIO(u""" amount price
A 40929 4066443
B 93904 9611272
C 188349 19360005
D 248438 24335536
E 205622 18888604
F 140173 12580900
G 76243 6751731
H 36859 3418329
I 29304 2758928
J 39768 3201269
K 30350 2867059""")
df = pd.read_csv(s, index_col=0, delimiter=' ', skipinitialspace=True)
fig = plt.figure()
ax_2 = fig.add_subplot(222, sharex=None, sharey=None)
ax_22 = …Run Code Online (Sandbox Code Playgroud) 我有一个类似的问题,以前回答过。但是,它与 Pandas 包的用法不同。
这是我之前的问题:matplotlib - 子图中的 twinx 轴没有 xlabel 和 xticks
所以,我和上一个一样的问题是,为什么在使用此 Python 代码时,第一行图不显示 xlabel 和 xticks。
两个注意事项:
subplots而不是gridspec相同的结果。import matplotlib.pyplot as plt
import matplotlib.gridspec as gspec
import numpy as np
import pandas as pd
from math import sqrt
fig = plt.figure()
gs = gspec.GridSpec(2, 2)
gs.update(hspace=0.7, wspace=0.7)
ax1 = plt.subplot(gs[0, 0])
ax2 = plt.subplot(gs[0, 1])
ax3 = plt.subplot(gs[1, 0])
ax4 = plt.subplot(gs[1, 1])
x1 = …Run Code Online (Sandbox Code Playgroud)