我正在使用Python尝试对不同的股市进行一些宏观经济分析。我想知道如何正确比较不同大小的索引。例如,道琼斯指数在y轴上约为25,000,而罗素2000仅为1,500。我知道,网站tradingview使得可以在其在线章程中比较这两者。它的作用是缩小/放大背景图,以使其与另一个在新的y轴上匹配。有什么统计方法可以让我在Python中做同样的事情?
答案 0 :(得分:0)
您在这里有多种可能性。假设您通过以下调用来定义轴
fig, ax = plt.subplots()
然后,您可以使用来将y轴的比例更改为对数
ax.set_yscale('log')
您还可以通过调用在同一图中定义两个具有不同比例的y轴
ax2 = ax.twinx()
然后在ax上绘制大值,在ax2上绘制小值。仅当您最多有两个值范围时,这才有效。 另一种解决方案是创建一个新轴,以在图内进行缩放
from mpl_toolkits.axes_grid1.inset_locator import zoomed_inset_axes
ax2 = zoomed_inset_axes(ax, zoom, bbox_to_anchor=(, ),
bbox_transform=ax.transAxes, loc='', borderpad=)
最后一件事是直接扩展数据。例如,如果DowJones在20,000到30,000之间变化,则可以应用以下转换
DowJones = (DowJones - min(DowJones)) / (max(DowJones) - min(DowJones))
,然后您的值将在0到1之间变化。将类似的转换应用于其他变量将使您可以更轻松地在同一张图上比较变化,而无需对轴进行任何更改。
答案 1 :(得分:0)
我知道网站tradingview使得可以在其在线章程中比较这两者。它的作用是缩小/放大背景图,以使其与另一个在新的y轴上匹配。
这些网站通过将两个索引的初始起点固定为100来重新调整它们的比例。如果道琼斯指数为25000点,标准普尔指数为2500,则道琼斯指数除以250首先得到100,而标准普尔则除以25。那么您有两个从100开始的指数,然后可以将它们进行比较。
另一种方法(仅当您有两个系列时才有效)-将y轴设置为一个系列的右侧,而将y轴设置为另一个系列的左侧。