質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

1980閲覧

matplotlibで表示されない要素がある

oniaki

総合スコア7

Matplotlib

MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2017/11/09 03:11

編集2017/11/09 03:18

matplotの散布図の描画でプロットされない要素があります。

表示させたいデータ

features = np.array([
[ 80, 85 ],
[ 96, 100 ],
[ 54, 83 ],
[ 80, 98 ],
[ 90, 92 ],
[ 84, 78 ],
[ 79, 100 ],
[ 88, 92 ],
[ 98, 73 ],
[ 75, 84 ],
])

features2 = np.array([
[ 85, 89 ],
[ 100, 110 ],
[ 64, 94 ],
[ 85, 102 ],
[ 92, 95 ],
[ 84, 85 ],
[ 75, 92 ],
[ 89, 95 ],
[ 104, 78 ],
[ 79, 88 ],
])

描画
plt.plot(features, features2, 'o')

このような座標を散布図として表示させたいのですが、必ず3行目が表示されません。
なにか間違っているのでしょうか

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WathMorks

2017/11/09 03:14

plotの対象はfeatures2の間違いではないですか?
oniaki

2017/11/09 03:17

申し訳ありません。正しく修正いたします。
guest

回答2

0

x軸とy軸のデータがどこに対応しているのかわかりませんが、散布図はscatterで描画できます。

1つのndarrayにx軸とy軸のデータが含まれている場合

python

1plt.scatter(features[:, 0], features[:, 1]) 2plt.scatter(features2[:, 0], features2[:, 1]) 3plt.show()

featuresがx軸、features2がy軸のデータの場合

python

1plt.scatter(features[:, 0], features2[:, 0]) 2plt.scatter(features[:, 1], features2[:, 1]) 3plt.show()

投稿2017/11/09 03:39

driller

総合スコア720

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

WathMorks

2017/11/09 03:40

ああ、そっちですね。
oniaki

2017/11/09 03:49

ありがとうございます!ちゃんと勉強しなおします。
oniaki

2017/11/09 03:49

ありがとうございます!ちゃんと勉強しなおします。
guest

0

ベストアンサー

plt.plot(features, features2, 'o')

plt.plot(features[:,0],features2[:,0], 'o') plt.plot(features[:,1],features2[:,1], 'o')

と同じことです。3行目もきちんと表示されています。試しに

plt.plot(features,features2, 'o') plt.plot(features[2,0],features2[2,0], 'd') plt.plot(features[2,1],features2[2,1], '^')

を実行してみてください。

次のように誤解していませんか?
featuresの3行目
[ 54, 83 ]
とfeatures2の3行目
[ 64, 94 ]
がそれぞれプロットされるはずだ、と。

プロットされるペアは
[54, 64]と[83,94]です。

投稿2017/11/09 03:28

編集2017/11/09 03:37
WathMorks

総合スコア1582

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

oniaki

2017/11/09 03:36

実行しましたが、fi\eatures2がd,^共に表示されませんでした
oniaki

2017/11/09 03:46

完全に誤解しておりました。 plt.plot(features[:,0],features[:,1] ,'o') plt.plot(features2[:,1],features2[:,1], 'o') としたところ正しく表示されました。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問