图例颜色与绘图颜色不匹配

我正在尝试设置散点图中每个点的图例。我的主要问题是每个点的颜色与图例中的颜色不匹配。我做错了什么,我该如何纠正?


def scatter(self, indep, dep, labl):

   x = self.df_input[indep]

   y = self.df_input[dep]

   random = np.random.RandomState(0)

   colors = random.rand(len(labl)+1)


   fig = plt.figure()

   ax = fig.add_subplot(111)


   for leg in labl:

      ax.scatter(x, y, c=colors, cmap='gist_ncar', label=leg)


   ax.legend()

   ax.set_xlabel(indep)

   ax.set_ylabel(dep)

   ax.axis('tight')

   plt.show()


翻过高山走不出你
浏览 335回答 1
1回答

犯罪嫌疑人X

看起来您可能正在尝试在数据框中绘制组。所以这样的事情可能会奏效:import matplotlib.pyplot as pltimport pandas as pddata = [['a', 1, 3],        ['a', 2, 2],        ['b', 2, 4],        ['b', 1, 5],        ['b', 3, 5],       ]df = pd.DataFrame(data, columns=['cat', 'x', 'y'])for name, group in df.groupby('cat'):    plt.scatter(group.x, group.y, label=name)plt.legend()这产生:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python