Плотно yaxis2 ручное масштабирование - PullRequest
0 голосов
/ 23 мая 2019

У меня есть приборная панель с графикой, и я не могу изменить масштаб моей вторичной оси Y. Есть ли способ сделать это? Я попытался возиться с параметром домена и параметром диапазона в go.Layout. Мне нужно, чтобы гистограмма объема была уменьшена и занимала, возможно, 10% высоты графика, чтобы она не перекрывалась с моими свечами.

Большое спасибо. Любая помощь приветствуется.

candlestick_chart

import pandas as pd
import pandas_datareader.data as web
import plotly.offline as pyo
import plotly.graph_objs as go


stock_ticker='AAPL'
start_date='2019-04-01'
end_date='2019-05-22'


data=[]

hist_stock_df = web.DataReader(stock_ticker,'iex',start_date, end_date)



data.append(go.Candlestick(x=hist_stock_df.index,
                            open=hist_stock_df['open'],
                            high=hist_stock_df['high'],
                            low=hist_stock_df['low'],
                            close=hist_stock_df['close'],
                            name='AAPL'))

data.append(go.Bar(x=hist_stock_df.index,
                    y=hist_stock_df['volume'].values,
                    yaxis='y2'))
                    #y0=1000000

layout=go.Layout(title= 'Candestick Chart of AAPL',
                xaxis=dict(title='Date',rangeslider=dict(visible=False)),
                yaxis=dict(title='Price'),
                plot_bgcolor='#9b9b9b',
                paper_bgcolor='#9b9b9b',
                font=dict(color='#c4c4c4'),
                yaxis2=dict(title='Volume',
                            overlaying='y',
                            side='right'))
                            #scaleanchor='y'))
                            #scaleratio=0.00000001,
                            #rangemode='tozero',
                            #constraintoward='bottom',
                            #domain=[0,0.1]))


fig = go.Figure(data=data, layout=layout)

pyo.iplot(fig)

Я пробовал возиться с закомментированными параметрами

UPDATE

С помощью этой комбинации параметров макета мне удалось изменить масштаб столбцов, но теперь есть две оси X, которые пытаются выяснить, как перенести среднюю ось X вниз.

Updated paramenters

layout=go.Layout(title= 'Candestick Chart of AAPL',
                xaxis=dict(title='Date',rangeslider=dict(visible=False)),
                yaxis=dict(title='Price'),
                plot_bgcolor='#9b9b9b',
                paper_bgcolor='#9b9b9b',
                font=dict(color='#c4c4c4'),
                yaxis2=dict(title='Volume',
                            overlaying='y',
                            side='right',
                            scaleanchor='y',
                            scaleratio=0.0000001))
...