質問: 10) # 目盛線のラベルサイズ # グラフの描画 plt.scatter(df_plot["A"], df_plot["B"], s=50, c="b", marker="D", alpha=0.5) #散布図の描画 plt.legend(df_plot["C"], loc="lower right", fontsize=10)#凡例 plt.show() ``` practice.csv A,B,C 4.68,11.85431,Tanaka 4.73,12.50193,Sato 4.87,12.52497,Sato ### 追加情報 macOS10.15.4, Python3
回答: matplotlib のデフォルトフォントは英字フォントなので、日本語は表示できません。 以下の手順で日本語フォントを設定すれば、反映されます。 (Jupyter Notebook の場合、Notebook を再起動してください) matplotlib - コピペするだけで matplotlib を日本語化する方法 (Windows / Ubuntu 対応) - pystyle 追記 点ごとに凡例を用意するということでしょうか? ``` import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv("sample.csv") plt.xlim(4, 10) # x軸の表示範囲 plt.ylim(8, 14) # y軸の表示範囲 plt.title("Graph", fontsize=10) # タイトル plt.xlabel("X axis", fontsize=10) # x軸ラベル plt.ylabel("Y axis", fontsize=10) # y軸ラベル plt.grid(True) # 目盛線の表示 plt.tick_params(labelsize=10) # 目盛線のラベルサイズ # グラフの描画 for row in df.itertuples(): plt.scatter(row.A, row.B, s=50, marker="D", alpha=0.7, label=row.C) plt.legend(loc="lower right", fontsize=10) plt.show() ``` !イメージ説明 追記 seaborn.scatterplot() を使うと簡単です。 seaborn は `pip install seaborn` でインストールできます。 使い方 ``` seaborn.scatterplot(x="X座標の列名", y="Y座標の列名", hue="凡例の列名", data=DataFrame の変数, ax=ax) ``` seaborn.scatterplot — seaborn 0.10.1 documentation ↓ サンプルコード ``` import matplotlib.pyplot as plt import pandas as pd import seaborn as sns df = pd.read_csv("sample.csv") fig, ax = plt.subplots() ax.set_xlim(4, 10) # x軸の表示範囲 ax.set_ylim(8, 14) # y軸の表示範囲 ax.set_title("Graph", fontsize=10) # タイトル ax.set_xlabel("X axis", fontsize=10) # x軸ラベル ax.set_ylabel("Y axis", fontsize=10) # y軸ラベル ax.grid() # 目盛線の表示 ax.tick_params(labelsize=10) # 目盛線のラベルサイズ sns.scatterplot(x="A", y="B", hue="C", data=df, ax=ax) plt.show() ``` !イメージ説明