3

4D データの散乱画像の色空間の修正に関する私の以前の質問への回答で、Tom10 は、私のデータを再確認するために値をシンボルとしてプロットすることを提案しました。素晴らしいアイデアです。過去に似たようなデモをいくつか実行したことがありますが、覚えているデモが非常に単純であることは今のところわかりません。

では、たとえば「o」の代わりに数値を散布図の記号としてプロットする最も簡単な方法は何ですか? Tom10 は plt.txt(x,y,value) を提案しました。これは、多くの例で使用されている実装です。しかし、数値の配列から「値」を評価する簡単な方法があるのだろうか? str(valuearray) と簡単に言えますか?

3D テキスト散布図の matplotlib デモ セクションで提案されているように、プロットの値を評価するループが必要ですか?

彼らの例は次のようになります。

代替テキスト
(出典: sourceforge.net )

ただし、データに基づいて位置を評価したり、テキストの方向を変更したりする際に、かなり複雑なことを行っています。それで、x、y、Cデータをプロットするかわいい方法はありますか(Cはプロットデータの色としてよく使われる値ですが、代わりにシンボルを作成したいです)?

繰り返しますが、私たちはこれに対して公正な答えを持っていると思います - もっと簡単な方法があるのだろうか?

4

1 に答える 1

2

これを行うために私が見た最も簡単な方法は次のとおりです。

for x, y, val in zip(x_array, y_array, val_array):
    plt.text(x, y, val)

また、ところで、str(valarray)を使用することを提案しましたが、これは、お気づきかもしれませんが、機能しません。数値の配列を文字列のシーケンスに変換するには、

valarray.astype(str)

numpy配列を取得するには、または、

[str(v) for v in valarray]

Pythonリストを取得します。ただし、valarrayを文字列の適切なシーケンスとして使用しても、plt.textは入力を反復処理しません。

于 2010-06-05T23:49:34.677 に答える