pythonにplotlyを使用していますが、x
軸とy
軸を設定できないため、同じスケールにすることができます。
これが私のレイアウトです:
layout = Layout(
xaxis=XAxis(
range=[-150, 150],
showgrid=True,
zeroline=True,
showline=True,
gridcolor='#bdbdbd',
gridwidth=2,
zerolinecolor='#969696',
zerolinewidth=4,
linecolor='#636363',
linewidth=6
),
yaxis=YAxis(
range=[-150,150],
showgrid=True,
zeroline=True,
showline=True,
gridcolor='#bdbdbd',
gridwidth=2,
zerolinecolor='#969696',
zerolinewidth=4,
linecolor='#636363',
linewidth=6
)
)
そして、私はこのようなものを手に入れます!
Xとyでスケールが異なるのはなぜですか?それは私の視覚化に影響します。
正方形のセルを持つグリッドを取得するにはどうすればよいですか?
レイアウトのheightとwidthに同じ長さを割り当てることができます。次に例を示します。
layout = Layout(
xaxis=XAxis(
range=[-150, 150],
showgrid=True,
zeroline=True,
showline=True,
gridcolor='#bdbdbd',
gridwidth=2,
zerolinecolor='#969696',
zerolinewidth=4,
linecolor='#636363',
linewidth=6
),
yaxis=YAxis(
range=[-150,150],
showgrid=True,
zeroline=True,
showline=True,
gridcolor='#bdbdbd',
gridwidth=2,
zerolinecolor='#969696',
zerolinewidth=4,
linecolor='#636363',
linewidth=6
),
height=600,
width=600,
)
最後に、この機能が実装されます。
layout = go.Layout(yaxis=dict(scaleanchor="x", scaleratio=1))
ここの例を参照してください https://plot.ly/python/axes/#fixed-ratio-axes 。
@nedaの答えは、xとyの両方の等しい範囲でのみ機能します-これはめったにありません。これは、matplotlibのaxis( 'equal')のように、多くの人が求めているもののようです。 https://github.com/plotly/plotly.py/issues/7 を参照してください
今のところ、私は両方の範囲に別々に乗数を使用します-基本的に、各単位長が各軸上にある長さを定義します。
height=(yMax - yMin) * mul
width= (xMax - xMin) * mul
これを行っても、グリッドは100%の完全な正方形ではありません。