问题:
如果我选择plot
选项stacked = False
我将得到正确的数据x轴输出。在
但是,当我使用stacked = True
时,我得到的输出不正确,在x轴上显示更高(不正确)的值。除了stacked
选项之外,没有其他任何变化。在
我是不是遗漏了一些明显的东西?在
数据
DataFrame.to_dict()
输出here
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
cols = ['OpenToLast','OpenToMaxHigh','OpenToMaxLow']
colors = {'OpenToLast':'b', 'OpenToMaxHigh' : '#CCD1F5', 'OpenToMaxLow': '#C6DAF4'}
axnum = auction[cols].plot(kind='barh',
figsize=(6,8),
fontsize=9,
color=[colors[i] for i in cols],
edgecolor = "none",
stacked = False,
legend = True)
axnum.xaxis.set_major_locator(ticker.MultipleLocator(5))
plt.axvline(0, color='B')
堆积图将各个条形图堆叠在一起,而不是重叠数据。例如,您在2016-12-16的最高值是25(开放到最后),30(开放到最大高度),在堆叠图中是25和30堆叠在一起,在55
它们实际上并不是更高,它们只是堆在一起。在
例如,在第一个图中,顶栏
2016-12-16 11:30:00
值为25,OpenToMaxHigh
值为31。在但是,当stacked=True时,它们仍然具有相同的值,但它们是相对的。虽然,
OpenToLast
仍然是25,但您的OpenToMaxHigh
值看起来好像是从0到56,但它实际上是从OpenToLast
结束的地方开始的:即从25到56,这是它的正确值(31)。在我想那可能是你错过的“显而易见”的东西,只是我的两分钱。在
相关问题 更多 >
编程相关推荐