実現したいこと
以下のcsvファイルを作成しました。
plaintext
1X Y ID 216.613823 35.20307 1 3-26.215204 -41.595173 2 4-35.323254 29.553274 3 5-24.500708 -24.469454 4 6-18.60537 22.441013 5 7-19.303822 22.25927 6 851.462376 5.0380235 7 9-49.644756 24.7235 8 10-10.209252 14.381219 9 11-22.27338 -23.75833 10 1241.276443 -6.7064342 11 1341.234615 -23.445583 12 14-42.613247 18.45166 13 15-25.215736 16.955725 14 16-49.078453 10.3050585 15 17-21.086199 -33.48586 16 18-32.35577 29.047813 17 19-21.02366 -33.482353 18 2030.969278 -8.999473 19 2111.946459 -2.897659 20 228.148171 21.763382 21 23-3.4299886 32.34708 22 24-39.974262 -26.356916 23 25
このcsvファイルを用いて、散布図を表示し、マウスを任意の点に近づけるとIDが表示されるようにしたいです。
今回試したファイルでは、このようなことをしなくてもはっきりと見えそうですが
最終的には、大規模なデータを扱いたいと思っています。
試したこと
エラーではないのですが、マウスを任意の点に近づけるとという内容のプログラムの書き方が分からないです。
試しに、IDが一括で表示されるプログラムを書いてみようと思いました。
書いてみましたが、IDではなく行番号が指定されてしまいました。(該当のソースコード)
長々と書きましたが、
・csvのデータが散布図上のどこにあるか簡単に分かる方法
・それを行うためのコード
をご教授お願いします。
該当のソースコード
python
1import pandas as pd 2import numpy as np 3import matplotlib.pyplot as plt 4import csv 5 6df_csv_file = pd.read_csv("tameshi.csv") 7 8fig, ax = plt.subplots() 9df_csv_file.plot(1,2,kind='scatter',ax=ax) 10for k, v in df_csv_file.iterrows(): 11 ax.annotate(k,xy=(v[1],v[2]),size=20) 12plt.show()

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2022/10/20 06:05