AaLullaby 2021-04-05 13:58 采纳率: 0%
浏览 80

matplotlib画点

我现在有一组数据一共是三列:第一列是id 第二三列分别是x,y坐标。现在我想用matplotlib把这些点画出来,并根据前面的id进行分类显示,相同id的点用同一种颜色表示出来。求大佬我应该怎么操作呢。

  • 写回答

3条回答 默认 最新

  • CSDN专家-孙老师 2021-04-05 14:43
    关注

    有两种方式可以实现,例如,有以下数据。

    import seaborn as sns
    sns.set(style="darkgrid")
    
    tips = sns.load_dataset("tips")
    tips.head()

    关注前三列:total_bill,tip,sex,这里total相当于x,tip相当于y,sex相当于id。

    第一种方式:seaborn,一行代码即可。

    sns.relplot(x="total_bill", y="tip", hue="sex", data=tips);

    第二种方式:matplotlib。

    x=tips['total_bill']
    y=tips['tip']
    
    c_label=[1 if i=='Female' else 0 for i in tips['sex']]
    c_label[:10]
    
    import matplotlib.pyplot as plt
    
    fig,ax=plt.subplots()
    ax.scatter(x,y,c=c_label,cmap='autumn')
    plt.show()

    评论

报告相同问题?

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大