使用在次要情節設置等pandas.DataFrame.plot()
和GridSpec
中嵌套一個複雜的腳本,我有以下問題:X軸-Tick認證標籤都消失與大熊貓到次要情節繪製,但仍保存
當我創建一個2 -cols 1行gridspec,tick標籤都是正確的。然而,當我創建一個1行2行的gridspec時,只要我使用pandas.DataFrame.plot()
繪製到第一行(上排),第一行的x標記消失(滴答剩下)。
一旦我在下斧頭上畫東西,情況並非如此,最上面的蜱變化了,sharex
似乎不是問題。
然而,我的X-標籤仍保存:
axes[0].get_xaxis().get_ticklabels()
Out[59]:
<a list of 9 Text major ticklabel objects>
這只是他們沒有顯示。我懷疑NullFormatter,但是這也不情況:
axes[0].get_xaxis().get_major_formatter()
Out[57]:
<matplotlib.ticker.ScalarFormatter at 0x7f7414330710>
我得到兩個刻度和標籤上的第一軸的頂部,當我做
axes[0].get_xaxis().tick_top()
然而,當我再回去tick_bottom()
,我只在底部有刻度線,而不是標籤。
什麼會導致我的存儲標籤不能顯示,儘管是「正常」格式化程序?
這裏有一個簡單的例子:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import gridspec
df = pd.DataFrame(np.random.rand(100,2), columns=['A', 'B'])
figure = plt.figure()
GridSpec = gridspec.GridSpec(nrows=2, ncols=1)
[plt.subplot(gsSpec) for gsSpec in GridSpec]
axes = figure.axes
df.plot(secondary_y=['B'], ax=axes[0], sharex=False)
你介意創建[MCVE(http://stackoverflow.com/help/ mcve),以便更容易查看和調試您的問題嗎? –
是的,真的需要一個mcve,我不能重現這種行爲(我試過[this](https://gist.github.com/jmarrec/17df8922d268d63f32259f4bbe36ccfa),它的工作就像一個魅力) –
@JulienMarrec補充說 – FooBar