在散点图中为每个类别绘制不同的聚类标记

2024-03-12

我有一个散点图,其中绘制了 14 个簇,但每 2 个簇属于同一类,它们都使用相同的标记。每 50 行是一个簇​​,每 100 行是同一类的两个簇。我想要做的是更改每 2 个簇或 100 行的标记。

数据框链接 http://www.mediafire.com/file/7ngfzti158bdrqc/lda_values/file

    import pandas as pd
    import numpy as np
    from matplotlib import pyplot as plt
    from matplotlib.pyplot import figure
    
    y = [0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 0,  0,  0,  0,  0,  0,
      0,  0,  0,  0, 0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,
      0,  0,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,
      1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,
      1,  1,  1,  1,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,
      2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,  2,
      2,  2,  2,  2,  2,  2,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,
      3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,
      3,  3,  3,  3,  3,  3,  3,  3,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,
      4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,
      4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,
      5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,
      5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  5,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,
      6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,
      6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  6,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,
      7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,
      7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  7,  8,  8,  8,  8,  8,  8,  8,  8,
      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,
      8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  9,  9,  9,  9,  9,  9,
      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,
      9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9,  9, 10, 10, 10, 10,
     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
     10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11,
     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
     11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
     12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
     12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
     13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
     13, 13, 13, 13]
    X_lda = pd.read_pickle('lda_values')
    X_lda = np.asarray(X_lda)
    
    

markers = ['x', 'o', '1', '.', '2', '>', 'D']
color=['b','r'] 
X_lda_colors=  [ color[i] for i in list(np.array(y)%2) ]
X_lda_markers = [markers[i] for i in list(np.array(y)%2)] 
plt.xlabel('1-eigenvector')
plt.ylabel('2-eigenvector')
plt.scatter(
    X_lda[:,0],
    X_lda[:,1],
    marker = X_lda_markers,
    c=X_lda_colors,
    cmap='rainbow',
    alpha=0.7,
)

这是我可以从包含大量数据的大型代码中获得的最小可重现示例。

这是实际的情节:

This is what i am trying to achieve. enter image description here

我得到的错误:

ValueError: Unrecognized marker style ['x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x', 'x'...]'

请尝试这个:

import numpy as np
from matplotlib import pyplot as plt

X_lda=np.array([[1,2],[1,1],[3,3],[4,4],[2,4],[3,5],[3,4],[3,2]]) # suppose you want to plot X

y=[0,1,1,1,2,3,4,4] # the cluster of each sample in X_lda 

color=['b','r'] 
markers = ['x', 'o', '1', '.', '2', '>', 'D'] # marker
X_lda_colors=  [ color[i] for i in list(np.array(y)%2) ] 
X_lda_markers= [ markers[i] for i in list(np.array(y)%2) ] 
plt.xlabel('1-eigenvector')
plt.ylabel('2-eigenvector')

for i in range(X_lda.shape[0]):
    plt.scatter( X_lda[i,0],    X_lda[i,1],    c=X_lda_colors[i],
    marker=X_lda_markers[i],    cmap='rainbow',   alpha=0.7,     edgecolors='w')
plt.show()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在散点图中为每个类别绘制不同的聚类标记 的相关文章

  • 在Python中,如何将矩阵逆时针旋转90度?

    gt gt gt def rotate matrix k List List int For example if I have m 1 2 3 2 3 3 5 4 3 rotate matrix m should give me 3 3
  • 如果 Excel 文件是由程序创建的,Pandas read_excel 对于具有简单公式的单元格返回 nan [重复]

    这个问题在这里已经有答案了 I use pd read excel读取由以下命令创建的 excel 文件openpyxl并从一个网址下载 解析后的数据框将给出nan如果单元格值是公式 which formula is simply 100
  • Python 转换矩阵

    我有一个如下所示的列表 2 1 3 1 2 3 1 2 2 2 我想要的是一个转换矩阵 它向我显示如下序列 1 后跟 1 的频率是多少 1 后面跟着 2 的频率是多少 1 后跟 3 的频率是多少 2 后跟 1 的频率是多少 2 后跟 2 的
  • 通过 python 中的另外两个修改数组[重复]

    这个问题在这里已经有答案了 假设我们有三个一维数组 A 长度为 5 B 长度相同 示例中为5 C 更长 比如长度为 100 C最初用零填充 A给出索引C应更改的元素 它们可能会重复 以及B给出应添加到初始零的值C 例如 如果A 1 3 3
  • 键入的完整命令行

    我想获得输入时的完整命令行 This join sys argv 在这里不起作用 删除双引号 另外 我不想重新加入已解析和拆分的内容 有任何想法吗 你太迟了 当键入的命令到达 Python 时 您的 shell 已经发挥了它的魔力 例如 引
  • Flask 中“缺少 CSRF 令牌”,但它在模板中呈现

    问题 当我尝试登录 使用 Flask login 时 我得到Bad Request The CSRF session token is missing但令牌正在呈现 在模板中 secret key 已设置 并且我在本地运行localhost
  • 如何计算数据框中按另一列的列值分组的一列的连续字符串值?

    我有以下数据框 Levels Labels Confidence 0 Hands 0 8 0 Leg 0 7 0 Eye 0 9 1 Ear 0 9 1 Eye 0 8 2 Hands 0 9 2 Eye 0 8 3 Eye 0 8 我想检
  • 如何从hdfs读取文件[重复]

    这个问题在这里已经有答案了 我在 project1目录下的hadoop文件系统中有一个文本文件名mr txt 我需要编写 python 代码来读取文本文件的第一行 而不将 mr txt 文件下载到本地 但我无法从 hdfs 打开 mr tx
  • Django 多对多关系(类别)

    我的目标是向我的 Post 模型添加类别 我希望以后能够按不同类别 有时是多个类别 查询所有帖子 模型 py class Category models Model categories 1 red 2 blue 3 black title
  • 查找与另一列 Pandas 中的唯一值关联的列中的值的交集

    如果我有一个像这样的数据框 非常小的例子 col1 col2 0 a 1 1 a 2 2 b 1 3 b 2 4 b 4 5 c 1 6 c 2 7 c 3 我想要所有的交集col2当价值观与其独特性相关时col1值 因此在这种情况下 交集
  • 高级描述熊猫

    有没有像 pandas 那样更高级的功能 通常我会继续这样 r pd DataFrame np random randn 1000 columns A r describe 我会得到一份很好的总结 就像这样 A count 1000 000
  • 如何用正则表达式替换多个匹配/组?

    通常我们会编写以下内容来替换一场比赛 namesRegex re compile r is life re I replaced namesRegex sub r butter There is no life in the void pr
  • 使用 if 语句的网格网格和用户定义函数的真值不明确

    假设我有一个函数f x y 足够光滑 然而 有些值仅在有限的意义上存在 以sin x x的价值x 0只存在于极限 x gt 0 中 在一般情况下 我用一个来处理这个问题if陈述 如果我在情节中使用它meshgrid我收到一条错误消息 Val
  • Python 属性和 Swig

    我正在尝试使用 swig 为一些 C 代码创建 python 绑定 我似乎遇到了一个问题 试图从我拥有的一些访问器函数创建 python 属性 方法如下 class Player public void entity Entity enti
  • Python:在字典中查找具有唯一值的键?

    我收到一个字典作为输入 并且想要返回一个键列表 其中字典值在该字典的范围内是唯一的 我将用一个例子来澄清 假设我的输入是字典 a 构造如下 a dict a cat 1 a fish 1 a dog 2 lt unique a bat 3
  • 如何获取分类数据的分组条形图

    I have a big dataset with information about students And I have to build a graph of dependencies between different value
  • Python 相当于 Scala 案例类

    Python 中是否有与 Scala 的 Case Class 等效的东西 就像自动生成分配给字段而无需编写样板的构造函数一样 当前执行此操作的现代方法 从 Python 3 7 开始 是使用数据类 https www python org
  • 两种 ODE 求解器之间的差异

    我想知道 两者之间有什么区别ODEINT and solve ivp用于求解微分方程 它们之间有什么优点和缺点 f1 solve ivp f 0 1 y0 y0 is the initial point f2 odeint f y0 0 1
  • 使用 MPI 的 Allreduce 对 Python 对象求和

    我正在使用使用 Python 中的字典和计数器构建的稀疏张量数组操作 我想让并行使用这个数组操作成为可能 最重要的是 我最终在每个节点上都有计数器 我想使用 MPI Allreduce 或另一个不错的解决方案 将其添加在一起 例如 使用计数
  • 在Python中停止ThreadPool中的进程

    我一直在尝试为控制某些硬件的库编写一个交互式包装器 用于 ipython 有些调用对 IO 的影响很大 因此并行执行任务是有意义的 使用 ThreadPool 几乎 效果很好 from multiprocessing pool import

随机推荐

  • 使用android下载文件

    我正在尝试将文件从网络保存到我的 Android 设备 但我不知道该怎么做 URL 地址会打开一个空白页面和一个弹出下载框 其中包含我要下载的文件 以便我可以选择保存位置 我的问题是我不知道如何管理该框以下载文件 我不想下载该页面上显示的内
  • php 像 UTC 一样编译欧洲/柏林时区

    今天我一直在努力解决一个奇怪的问题 由于某种原因 我的服务器假装时区 欧洲 柏林 是 UTC 应该是 UTC 1 例如 如果我将时区设置为 欧洲 布鲁塞尔 它会正确转换时间 我创建了一些虚拟代码来测试我的服务器和在线编译器 当编译器工作时
  • 如何使用 glDrawTex*

    我想拍摄一张 png 图像并将其用作 GLView 的背景 我听说 glDrawTex 是最好的方法 但我在互联网上搜索过 但没有找到一个如何使用它的示例 至少没有一个对我有用 有什么帮助吗 虽然OES draw texture 扩展 ht
  • 在 botframework 网络聊天中发送消息(来自建议)后,如何清除聊天输入框?

    我正在使用 React js 和 botframework 网络聊天开发一个机器人应用程序 问题是我想在发送消息后清除文本输入框 从发送消息的位置 这是从建议中选择的 建议列表 或自动完成组件 是自定义编码的列表 我的意思是 如果我输入 h
  • 以一种形式以编程方式发送多个文件输入字段

    我正在尝试使用blueimp jQuery 文件上传 https github com blueimp jQuery File Upload插件以编程方式通过同一表单发送多个文件输入字段 当用户选择表单文件时 它只是将它们附加到 JS 变量
  • 熊猫爆炸 - 无法从重复轴重新索引

    假设我有一个数据框df C1 C2 C3 C4 C5 0 A 1 s1 123 t1 1 A 1 s2 321 t2 2 A B 1 2 s3 777 111 t3 3 B 2 s4 145 t4 4 B 2 s5 990 t5 5 A B
  • C# 中的 switch 语句和“需要一个常量值”

    为什么编译器对第一种情况说 需要一个常量值 第二种情况工作正常 switch definingGroup case Properties Settings Default OU HomeOffice do something break c
  • Matplotlib:如何加载和显示 PDF 图像

    我的问题很简单 我有一个 PDF 图形 我想与一些数据分析的结果一起显示 然而 即使是广泛的 Google 搜索也没有找到一种在图中加载和显示 PDF 的方法 我只找到了 JPG 或 PNG 等光栅图像的标准结果 提前致谢 我不认为 Mat
  • WordPress 插件:如何添加自定义 URL 处理程序

    我正在尝试编写一个 Wordpress 插件 但似乎无法弄清楚如何修改 URL 的处理方式 例如 任何请求
  • 无法中断 for 循环:非语法中断

    我想要break a for loop当满足某个条件时 Object keys s map uk gt Object keys s uk map ik gt for let i 1 i lt data length i if s uk ik
  • 尝试获取文件夹的子级时出现 MS Graph API 未知错误

    当尝试使用 Microsoft Graph API 相对路径访问共享点站点驱动器中的特定文件夹时 出现未知错误 这个完全相同的请求在一周前工作正常 但本周再次使用时停止工作 测试结果是我网站驱动器上的一个文件夹 根据OneDrive 开发文
  • Active Admin - 用户和管理员的模型相同

    我希望让 Active Admin 为网站做后端 不过 我真的不想为用户和管理员用户建立单独的模型 如果用户模型中有 is admin 标志 我可以只让管理员用户登录到 Active Admin 吗 如果用户不是管理员 他们应该只能登录网站
  • 当包含某些列时,MySQL ORDER BY AVG() DESC 不起作用

    我正在执行一个查询以返回 table1 中的所有行以及 table2 中的平均评分 SELECT table1 description AVG table2 rating AS avg rating FROM table1 LEFT JOI
  • 在 Jenkins 的节点/标签限制中放置通配符/正则表达式

    在作业配置中 有一个复选框 限制该项目可以运行的位置 如果选择它 则会有一个关于标签表达式的输入字段 有没有办法在那里插入正则表达式 而不是确切的名称 如果是 您能提供一个例子吗 这背后的整个概念是 我想将限制作业分配给自动创建的具有相似名
  • 每天在设定时间用 Swift 发出通知? [复制]

    这个问题在这里已经有答案了 如果有人感到困惑并认为这是我昨天的问题的重复 那么事实并非如此 那里我问的是如何每天调用一个函数 这里我问的是如何在每天的特定时间调用通知 我正在寻找一种每天早上 7 点重复本地通知的方法 我目前有这个代码设置来
  • REST Datasnap 覆盖 URI 映射

    我用 delphi XE2 中的 REST datasnap 编写了一个小型 REST 服务器 HTTP 方法 POST PUT 等 和 delphi 中定义的函数之间有一个默认映射 这是由 delphi 组件完成的 这个维基条目 http
  • 如何在ARMv8-a上启用Aarch32指令集?

    Raspberry Pi 3 使用具有 ARMv8 A53 内核的 Broadcom SoC https www raspberrypi org magpi raspberry pi 3 specs benchmarks 它还使用基于 De
  • 如何启动声纳库?

    为了我的学习 我需要在 ubuntu 服务器上安装 sonarqube 我按照本教程安装了它 http www naturalborncoder com methodology 2015 05 27 sonarqube on ubuntu
  • 如何减少WorkManager中Periodic WorkManager的时间

    In PeriodicTimeRequest最短周期时间为 15 分钟 我想将其从 15 分钟减少到 15 分钟以内 我该怎么做 我们有一个技巧可以减少 15 分钟的定期运行时间 但您不能使用PeriodicWorkRequest 创建具有
  • 在散点图中为每个类别绘制不同的聚类标记

    我有一个散点图 其中绘制了 14 个簇 但每 2 个簇属于同一类 它们都使用相同的标记 每 50 行是一个簇 每 100 行是同一类的两个簇 我想要做的是更改每 2 个簇或 100 行的标记 数据框链接 http www mediafire