1

y軸を共有して2つの散布図を並べようとしていますが、軸の縮尺がおかしいようです。共有軸がない場合、2つのプロットは正常に見えます。また、「スキャッター」の代わりに「プロット」を使用しても問題が発生しないことに気づきました。画像は以下に含まれています。これが私が使用しているコードです。

#!/usr/bin/python

import matplotlib.pyplot as plt

fig = plt.figure(1)
for i in range(1,3):
    if i == 1:
        ax = fig.add_subplot(1,2,i)
    else:
        fig.add_subplot(1,2,i, sharey=ax)

    #plt.plot([5.0], [1],marker="*",color='tomato')
    plt.scatter([5.0], [1], s=20, color='tomato')

plt.show()

[画像を含めますが、サイトでは初心者としては許可されません。]上記のコードを実行すると、0.0000から0.0008までのay軸のプロットが表示され、単一のポイントが0.0004にプロットされます。共有軸がない場合、y軸は0.94から1.06になり、予想どおり、単一の点が1.00にプロットされます。

誰か教えてもらえますか?これはバグですか、それとも機能ですか?

matplotlib:0.99.1.2-3ubuntu on Ubuntu 10.04 LTS-Lucid Lynx

4

1 に答える 1

0

理由の質問に対する答えはありませんが、それを取り除く方法は次のとおりです。コードスニペットで、scatter描画する3つのポイントを指定します。

plt.scatter([1.0,2,3], [1.1,2.2,2.9], s=20, color='tomato')

私のために動作します(Lucidのmatplotlib 1.1.0)。

scatter私はそれが軸の制限よりも少し賢くしようとしていると推測することしかできませんがplot、それが何をしていても、それはたった一点でうまくいきません。

于 2012-03-23T08:35:18.113 に答える