質問:
散布図を効率的に作成するにはどうすればよいですかPandas DataFrame を使用してプロットします。マーカーは、 DataFrame?
答え:
カテゴリ別にマーカーを区別するために matplotlib.pyplot.scatter() を使用するのは非効率的になる可能性があります。代わりに、離散カテゴリに対して matplotlib.pyplot.plot() を使用することを検討してください。
import matplotlib.pyplot as plt import numpy as np import pandas as pd # Generate Data num = 20 x, y = np.random.random((2, num)) labels = np.random.choice(['a', 'b', 'c'], num) df = pd.DataFrame(dict(x=x, y=y, label=labels)) # Group by labels groups = df.groupby('label') # Plot fig, ax = plt.subplots() ax.margins(0.05) # Optional padding # Use different markers and colors for each group for name, group in groups: ax.plot(group.x, group.y, marker='o', linestyle='', ms=12, label=name) ax.legend() # Specify custom colors and styles plt.rcParams.update(pd.tools.plotting.mpl_stylesheet) colors = pd.tools.plotting._get_standard_colors(len(groups), color_type='random') ax.set_color_cycle(colors) ax.legend(numpoints=1, loc='upper left') plt.show()
このコードは、カテゴリごとに色分けされたマーカーを含む散布図を生成します。
以上がPandas DataFrame でカテゴリごとに区別されたマーカーを使用して散布図を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。