matplotlibを使用して、互いに非線形の2つのx軸を持つ図をプロットしようとしています。複数のx軸はお互いに非線形です
基本的には、年齢が赤方偏移に依存している:私は取得したいプロットは、このようなものです。これは線形ではなく、計算する必要があります。私は年齢と赤の両方をx軸にシフトしたいと思っています。どうしたらいいですか?
matplotlibを使用して、互いに非線形の2つのx軸を持つ図をプロットしようとしています。複数のx軸はお互いに非線形です
基本的には、年齢が赤方偏移に依存している:私は取得したいプロットは、このようなものです。これは線形ではなく、計算する必要があります。私は年齢と赤の両方をx軸にシフトしたいと思っています。どうしたらいいですか?
私はこれは次のようでした:
from mpl_toolkits.axes_grid.parasite_axes import SubplotHost
fig = plt.figure(1, figsize=(figwidth,figheight))
ax = SubplotHost(fig, 1,1,1)
fig.add_subplot(ax)
#plotting as usual
ax2 = ax.twin() # ax2 is responsible for "top" axis and "right" axis
ax2.axis["right"].toggle(ticklabels=False)
ax2.xaxis.set_major_formatter(FuncFormatter(fmt_zToEta)) #set eta coord format
#with a function for the Z to eta transform for plot labels
def fmt_zToEta(x, pos=None):
#...
return transformed_label
また、私はSubPlotHost
事が必要であると思いますが、;-)その赤方偏移の例で
をオフに開始覚えています私はそれがうまく動作していないかどうかをチェックせずに私の既存の(サブ)プロットからこれを抜き出したので、私は100%確実ではない。
編集:また、私がやったが、私は評判が不足しているとして、プロットを投稿することができませんでしたhttps://stackoverflow.com/a/10517481/599884
を参照してください。 –
私はこの機能のポイントを得ていませんでした。 2つのx軸は依然として互いに線形であるように見えます。 – Fxyang
私は非線形であなたは対数を意味すると思います。 xtickは任意のティックを配置し、xticklabelsはそれらにラベルを付けることができます。希望が役立ちます。 –