基于颜色聚类的图形中的绘制节点

问题描述 投票:1回答:3

在以下将颜色映射到节点的字典中,我想绘制结果图,同时根据它们的颜色在图内将节点聚类。也就是说,如果节点41878285具有深红色,我希望它们在图形上彼此相邻出现。

我的字典如下:

nodesWithGroup= {6: 'slateblue',
     10: 'skyblue',
     4109: 'lawngreen',
     2062: 'mediumaquamarine',
     28: 'olive',
     10269: 'crimson',
     6175: 'aqua',
     10271: 'crimson',
     36: 'mediumaquamarine',
     2085: 'darkturquoise',
     2084: 'navajowhite',
     8234: 'crimson',
     6187: 'silver',
     2092: 'navajowhite',
     10297: 'mediumaquamarine',
     4154: 'silver',
     8259: 'gray',
     8270: 'olive',
     88: 'sandybrown',
     4187: 'crimson',
     8285: 'crimson',
     6243: 'lightsalmon',
     2150: 'beige',
     2156: 'silver',
     8302: 'lavenderblush',
     4211: 'royalblue',
     8310: 'silver',
     4219: 'limegreen',
     124: 'darkorange',
     128: 'gray',
     129: 'lightsalmon',
     4231: 'darkturquoise',
     2188: 'navajowhite',
     2205: 'crimson',
     4256: 'lawngreen',
     161: 'blueviolet',
     2210: 'gray',
     4264: 'lawngreen',
     4265: 'darkgoldenrod',
     6317: 'skyblue',
     6318: 'crimson',
     8367: 'limegreen',
     176: 'crimson',
     2228: 'lightsalmon',
     6332: 'thistle',
     4288: 'antiquewhite',
     2241: 'gray',
     8387: 'crimson',
     8396: 'skyblue',
     219: 'gray',
     6371: 'silver',
     6373: 'darkgoldenrod',
     229: 'sandybrown',
     233: 'silver',
     4329: 'darkgoldenrod',
     8441: 'brown',
     6395: 'lightsteelblue',
     4360: 'olive',
     8457: 'mediumaquamarine',
     2313: 'darkturquoise',
     269: 'royalblue',
     4365: 'limegreen',
     4374: 'lawngreen',
     2327: 'silver',
     8471: 'darkgoldenrod',
     283: 'mediumslateblue',
     8476: 'darkgoldenrod',
     288: 'skyblue',
     2338: 'mediumslateblue',
     6435: 'olive',
     2340: 'darkslategrey',
     4390: 'ghostwhite',
     295: 'mediumslateblue',
     2345: 'darkorange',
     8498: 'darkorange',
     4404: 'darkgoldenrod',
     2358: 'skyblue',
     4407: 'skyblue',
     315: 'gray',
     4415: 'silver',
     2369: 'darkslategrey',
     6475: 'blueviolet',
     8525: 'mediumaquamarine',
     4433: 'skyblue',
     4436: 'gray',
     2405: 'ghostwhite',
     8561: 'darkturquoise',
     377: 'olive',
     4480: 'skyblue',
     393: 'silver',
     394: 'mediumaquamarine',
     2443: 'darkturquoise',
     4490: 'ghostwhite',
     4491: 'blueviolet',
     395: 'lawngreen',
     399: 'lawngreen',
     4496: 'thistle',
     4497: 'gray',
     6547: 'slateblue',
     2453: 'darkgoldenrod',
     4501: 'lightsalmon',
     6551: 'darkgoldenrod',
     4507: 'limegreen',
     6566: 'skyblue',
     8615: 'skyblue',
     446: 'gray',
     449: 'blueviolet',
     4561: 'darkolivegreen',
     4566: 'royalblue',
     6614: 'darkslategrey',
     2521: 'skyblue',
     4573: 'mediumslateblue',
     4584: 'gray',
     6639: 'darkgoldenrod',
     501: 'silver',
     4599: 'darkslategrey',
     6660: 'gray',
     4622: 'blueviolet',
     533: 'sandybrown',
     534: 'olivedrab',
     8730: 'darkslategrey',
     6686: 'lawngreen',
     8736: 'darkslategrey',
     2597: 'crimson',
     2599: 'sandybrown',
     4648: 'gray',
     4652: 'silver',
     556: 'gray',
     2606: 'silver',
     4667: 'mediumaquamarine',
     4669: 'lightslategrey',
     2622: 'darkslategrey',
     2624: 'darkolivegreen',
     8768: 'sandybrown',
     2625: 'darkorange',
     4672: 'darkgoldenrod',
     2628: 'skyblue',
     4677: 'beige',
     8775: 'gray',
     6728: 'royalblue',
     2633: 'olive',
     587: 'darkturquoise',
     2638: 'darkslategrey',
     590: 'darkgoldenrod',
     2651: 'darkorange',
     6748: 'blueviolet',
     6749: 'darkslategrey',
     6753: 'darkolivegreen',
     4708: 'antiquewhite',
     615: 'olive',
     2665: 'olive',
     8810: 'lawngreen',
     6764: 'mediumaquamarine',
     6769: 'darkolivegreen',
     4723: 'olivedrab',
     4733: 'darkturquoise',
     645: 'darkslategrey',
     647: 'gray',
     2696: 'skyblue',
     6794: 'gray',
     2698: 'gray',
     8859: 'mediumaquamarine',
     667: 'darkturquoise',
     6813: 'lightsteelblue',
     8868: 'gray',
     4774: 'antiquewhite',
     2733: 'darkorange',
     687: 'darkgoldenrod',
     6832: 'darkslategrey',
     8888: 'gray',
     2750: 'silver',
     4805: 'lightsalmon',
     8911: 'darkslategrey',
     2771: 'olivedrab',
     4820: 'ghostwhite',
     2775: 'ghostwhite',
     6873: 'sandybrown',
     8924: 'darkolivegreen',
     6881: 'darkslategrey',
     2786: 'silver',
     739: 'darkslategrey',
     4836: 'mediumaquamarine',
     6886: 'blueviolet',
     746: 'silver',
     4843: 'crimson',
     2796: 'thistle',
     750: 'lightslategray',
     2800: 'beige',
     4849: 'olive',
     2803: 'silver',
     4851: 'limegreen',
     755: 'silver',
     6907: 'darkgoldenrod',
     6911: 'blueviolet',
     6915: 'mediumaquamarine',
     6917: 'olive',
     4870: 'ghostwhite',
     8967: 'gray',
     2830: 'silver',
     2832: 'navajowhite',
     2834: 'skyblue',
     8979: 'darkgoldenrod',
     792: 'darkturquoise',
     6943: 'ghostwhite',
     6950: 'ghostwhite',
     4908: 'sandybrown',
     2861: 'silver',
     6959: 'skyblue',
     828: 'skyblue',
     4928: 'olivedrab',
     6977: 'mediumaquamarine',
     4931: 'darkgoldenrod',
     4932: 'darkslategrey',
     6986: 'skyblue',
     858: 'darkgoldenrod',
     7010: 'limegreen',
     867: 'ghostwhite',
     4964: 'gray',
     878: 'thistle',
     2928: 'skyblue',
     9077: 'mediumaquamarine',
     4984: 'mediumaquamarine',
     9092: 'blueviolet',
     4997: 'navajowhite',
     902: 'silver',
     9098: 'skyblue',
     2955: 'skyblue',
     911: 'gray',
     9105: 'skyblue',
     2964: 'mediumaquamarine',
     7061: 'lawngreen',
     2967: 'lawngreen',
     2977: 'skyblue',
     7076: 'lawngreen',
     5030: 'silver',
     2999: 'limegreen',
     7098: 'mediumaquamarine',
     5051: 'darkturquoise',
     9153: 'darkturquoise',
     964: 'gray',
     7112: 'blueviolet',
     969: 'darkturquoise',
     970: 'olive',
     5068: 'skyblue',
     9172: 'sandybrown',
     7129: 'gray',
     7132: 'mediumaquamarine',
     991: 'ghostwhite',
     9188: 'skyblue',
     996: 'navajowhite',
     5092: 'skyblue',
     998: 'mediumslateblue',
     1001: 'ghostwhite',
     7149: 'gray',
     3056: 'mediumaquamarine',
     1009: 'mediumaquamarine',
     9203: 'gainsboro',
     9216: 'olive',
     5122: 'darkslategrey',
     5142: 'lightslategrey',
     1047: 'darkslategrey',
     7196: 'ghostwhite',
     5152: 'darkorange',
     3114: 'lawngreen',
     3122: 'sandybrown',
     1075: 'ghostwhite',
     5172: 'darkslategrey',
     7224: 'ghostwhite',
     7228: 'lightslategray',
     7234: 'darkslategrey',
     3147: 'limegreen',
     5199: 'beige',
     1105: 'silver',
     3155: 'ghostwhite',
     5204: 'ghostwhite',
     1110: 'silver',
     3165: 'sandybrown',
     7262: 'ghostwhite',
     9311: 'crimson',
     1136: 'silver',
     5241: 'darkturquoise',
     7293: 'lawngreen',
     3198: 'royalblue',
     5245: 'gray',
     5256: 'mediumaquamarine',
     7305: 'mediumaquamarine',
     1160: 'ghostwhite',
     5259: 'gray',
     1165: 'darkgoldenrod',
     9358: 'lightslategrey',
     1172: 'darkslategrey',
     3222: 'darkturquoise',
     3224: 'mediumaquamarine',
     5272: 'royalblue',
     3240: 'skyblue',
     1196: 'ghostwhite',
     5296: 'skyblue',
     1206: 'slateblue',
     3258: 'crimson',
     3259: 'limegreen',
     3262: 'sandybrown',
     3266: 'darkslategrey',
     3269: 'silver',
     1226: 'ghostwhite',
     5323: 'ghostwhite',
     9420: 'ghostwhite',
     7373: 'blueviolet',
     7376: 'darkgoldenrod',
     3296: 'navajowhite',
     7393: 'mediumaquamarine',
     7394: 'mediumaquamarine',
     9448: 'darkorange',
     3320: 'royalblue',
     7417: 'antiquewhite',
     1273: 'sandybrown',
     3323: 'antiquewhite',
     9465: 'blueviolet',
     5377: 'lightslategrey',
     1283: 'royalblue',
     1284: 'silver',
     3334: 'silver',
     9479: 'gray',
     9480: 'blueviolet',
     9481: 'gray',
     3339: 'silver',
     1291: 'limegreen',
     5393: 'skyblue',
     5402: 'skyblue',
     3366: 'crimson',
     9517: 'gray',
     1327: 'silver',
     5426: 'lavenderblush',
     5429: 'gray',
     9526: 'darkorange',
     3386: 'lightslategray',
     1347: 'darkorange',
     3397: 'thistle',
     5450: 'skyblue',
     9548: 'lightsteelblue',
     1357: 'darkslategrey',
     3407: 'gray',
     3417: 'silver',
     5466: 'limegreen',
     7515: 'navajowhite',
     3425: 'lawngreen',
     5479: 'darkgoldenrod',
     1386: 'ghostwhite',
     7533: 'royalblue',
     1391: 'ghostwhite',
     3453: 'darkslategrey',
     1408: 'lightslategray',
     1413: 'lightslategray',
     9607: 'blueviolet',
     1417: 'silver',
     7565: 'silver',
     3489: 'thistle',
     3490: 'silver',
     1443: 'darkslategrey',
     5539: 'lawngreen',
     5544: 'navajowhite',
     5546: 'gray',
     3498: 'lavenderblush',
     3500: 'olive',
     1452: 'darkorange',
     5556: 'gray',
     9653: 'mediumaquamarine',
     3509: 'darkgoldenrod',
     1464: 'crimson',
     1471: 'lawngreen',
     3526: 'darkgoldenrod',
     7625: 'gainsboro',
     9674: 'darkorange',
     7633: 'sandybrown',
     3538: 'silver',
     7648: 'navajowhite',
     1511: 'darkolivegreen',
     3560: 'crimson',
     3561: 'sandybrown',
     1512: 'gray',
     5607: 'blueviolet',
     7663: 'lightslategray',
     3569: 'darkturquoise',
     5625: 'skyblue',
     7702: 'mediumaquamarine',
     3607: 'darkgoldenrod',
     3608: 'thistle',
     7714: 'skyblue',
     1572: 'lightsalmon',
     7720: 'darkgoldenrod',
     5673: 'silver',
     3632: 'sandybrown',
     5681: 'limegreen',
     7730: 'lightsteelblue',
     5685: 'gray',
     5686: 'gray',
     5688: 'lavenderblush',
     3643: 'skyblue',
     3650: 'ghostwhite',
     5700: 'gray',
     5705: 'lightsteelblue',
     3658: 'ghostwhite',
     3661: 'skyblue',
     9824: 'brown',
     3690: 'darkslategrey',
     1644: 'lawngreen',
     1645: 'darkturquoise',
     5747: 'skyblue',
     9844: 'sandybrown',
     3702: 'silver',
     3704: 'darkslategrey',
     7806: 'mediumaquamarine',
     3713: 'darkslategrey',
     1665: 'ghostwhite',
     5768: 'darkolivegreen',
     1681: 'skyblue',
     5784: 'ghostwhite',
     9890: 'beige',
     1705: 'ghostwhite',
     7851: 'olive',
     9905: 'antiquewhite',
     3764: 'lavender',
     3765: 'silver',
     3770: 'olive',
     1725: 'navajowhite',
     9919: 'ghostwhite',
     3775: 'crimson',
     1731: 'olive',
     3783: 'silver',
     3785: 'crimson',
     1740: 'darkorange',
     1742: 'lightsalmon',
     3797: 'antiquewhite',
     7895: 'silver',
     3806: 'gray',
     7908: 'royalblue',
     3820: 'silver',
     3823: 'darkorange',
     7922: 'gray',
     3830: 'olivedrab',
     5886: 'ghostwhite',
     3841: 'ghostwhite',
     9997: 'silver',
     3858: 'darkgoldenrod',
     5906: 'gray',
     1811: 'lightslategray',
     10013: 'mediumaquamarine',
     1822: 'lightslategray',
     7966: 'darkturquoise',
     1824: 'ghostwhite',
     5924: 'gray',
     5927: 'limegreen',
     3886: 'antiquewhite',
     7989: 'mediumaquamarine',
     3900: 'antiquewhite',
     10045: 'crimson',
     1857: 'lawngreen',
     3908: 'lavender',
     10063: 'gainsboro',
     1876: 'darkturquoise',
     1877: 'skyblue',
     5974: 'gray',
     3932: 'olive',
     1887: 'gainsboro',
     3936: 'lawngreen',
     1889: 'silver',
     8043: 'silver',
     1904: 'darkorange',
     1921: 'lightslategray',
     6020: 'silver',
     1932: 'lightslategray',
     6030: 'beige',
     1936: 'darkturquoise',
     6035: 'blueviolet',
     8084: 'crimson',
     10140: 'lightslategray',
     8092: 'mediumaquamarine',
     8095: 'ghostwhite',
     8099: 'darkslategrey',
     6057: 'darkslategrey',
     6058: 'slateblue',
     6066: 'darkslategrey',
     8118: 'royalblue',
     6071: 'mediumaquamarine',
     4022: 'lavenderblush',
     6073: 'blueviolet',
     6074: 'silver',
     1978: 'olive',
     8122: 'lawngreen',
     4026: 'darkorange',
     1986: 'olivedrab',
     2003: 'darkorange',
     2005: 'lavenderblush',
     6105: 'crimson',
     6108: 'gray',
     8157: 'lawngreen',
     6129: 'navajowhite',
     2033: 'mediumaquamarine',
     10225: 'darkslategrey',
     6141: 'lawngreen'}

具有以下边缘(字典上方的键):

edges=   [(6, 176), (6, 283), (6, 394), (6, 446), (6, 645), (6, 996), (6, 1811), (6, 1876), (6, 2521), (6, 2999), (6, 3122), (6, 3198), (6, 3262), (6, 3339), (6, 3407), (6, 3608), (6, 4374), (6, 4491), (6, 4652), (6, 4723), (6, 4843), (6, 4984), (6, 4997), (6, 5092), (6, 5152), (6, 5259), (6, 5685), (6, 5705), (6, 5906), (6, 6066), (6, 6141), (6, 6551), (6, 6832), (6, 6907), (6, 6959), (6, 7098), (6, 7149), (6, 7228), (6, 7806), (6, 7922), (6, 7989), (6, 8099), (6, 8234), (6, 8387), (6, 8525), (6, 9824), (6, 9919), (6, 9997), (6, 2241), (6, 6873), (6, 8868), (6, 8911), (6, 533), (6, 1681), (6, 2327), (6, 2786), (6, 3453), (6, 3526), (6, 4211), (6, 4404), (6, 4669), (6, 5142), (6, 5681), (6, 8476), (6, 9480), (6, 3114), (6, 1327), (6, 2005), (6, 2205), (6, 3785), (6, 4851), (6, 5068), (6, 5402), (6, 5625), (6, 6373), (6, 6917), (6, 9188), (6, 10), (6, 36), (6, 534), (6, 687), (6, 746), (6, 755), (6, 1160), (6, 1172), (6, 1284), (6, 1511), (6, 1645), (6, 1731), (6, 1887), (6, 1978), (6, 2085), (6, 2150), (6, 2188), (6, 2313), (6, 2628), (6, 2633), (6, 2638), (6, 2665), (6, 2750), (6, 2977), (6, 3056), (6, 3320), (6, 3334), (6, 3500), (6, 3509), (6, 3538), (6, 3690), (6, 3765), (6, 3783), (6, 3858), (6, 4231), (6, 4256), (6, 4496), (6, 4507), (6, 4566), (6, 4648), (6, 4708), (6, 4774), (6, 4908), (6, 4931), (6, 5030), (6, 5466), (6, 5546), (6, 5673), (6, 5700), (6, 6035), (6, 6317), (6, 6332), (6, 6395), (6, 6475), (6, 6566), (6, 6660), (6, 6749), (6, 7112), (6, 7132), (6, 7234), (6, 7305), (6, 7394), (6, 7533), (6, 7625), (6, 7633), (6, 7714), (6, 8084), (6, 8259), (6, 8285), (6, 8310), (6, 8888), (6, 8924), (6, 9172), (6, 9358), (6, 9481), (6, 9548), (6, 9607), (6, 9844), (6, 9890), (6, 10013), (6, 10045), (6, 10140), (6, 10225), (6, 10271), (10, 176), (10, 283), (10, 394), (10, 446), (10, 645), (10, 792), (10, 2521), (10, 3122), (10, 3198), (10, 3339), (10, 3407), (10, 3561), (10, 3820), (10, 4374), (10, 4652), (10, 4723), (10, 4843), (10, 4984), (10, 4997), (10, 5152), (10, 5259), (10, 6639), (10, 6753), (10, 6832), (10, 6959), (10, 7098), (10, 7228), (10, 7373), (10, 7966), (10, 7989), (10, 8099), (10, 8859), (10, 9919), (10, 9997), (10, 6873), (10, 8868), (10, 8911), (10, 1009), (10, 3323), (10, 3526), (10, 5142), (10, 8270), (10, 8476), (10, 449), (10, 1226), (10, 1452), (10, 3785), (10, 4407), (10, 6073), (10, 6371), (10, 6373), (10, 6917), (10, 7417), (10, 9105), (10, 36), (10, 128), (10, 395), (10, 399), (10, 534), (10, 755), (10, 858), (10, 902), (10, 1165), (10, 1273), (10, 1391), (10, 1511), (10, 1742), (10, 1932), (10, 2210), (10, 2599), (10, 2638), (10, 2796), (10, 3056), (10, 3320), (10, 3386), (10, 3607), (10, 3661), (10, 3713), (10, 3764), (10, 3775), (10, 4022), (10, 4109), (10, 4231), (10, 4256), (10, 4480), (10, 4622), (10, 4708), (10, 5051), (10, 5199), (10, 5607), (10, 5686), (10, 6035), (10, 6071), (10, 6105), (10, 6129), (10, 6318), (10, 6435), (10, 6566), (10, 6614), (10, 6728), (10, 6748), (10, 6794), (10, 6986), (10, 7010), (10, 7129), (10, 7224), (10, 7305), (10, 7376), (10, 7533), (10, 7625), (10, 7648), (10, 7720), (10, 7730), (10, 8092), (10, 8122), (10, 8259), (10, 8471), (10, 8561), (10, 8736), (10, 8768), (10, 8775), (10, 8888), (10, 9098), (10, 9358), (10, 9653), (10, 9674), (10, 9844), (10, 9905), (10, 10271), (4109, 176), (4109, 233), (4109, 283), (4109, 394), (4109, 446), (4109, 1443), (4109, 2521), (4109, 2999), (4109, 3122), (4109, 3198), (4109, 3262), (4109, 3339), (4109, 3407), (4109, 3561), (4109, 3608), (4109, 4374), (4109, 4390), (4109, 4491), (4109, 4652), (4109, 4836), (4109, 4997), (4109, 5092), (4109, 5152), (4109, 5241), (4109, 5259), (4109, 5450), (4109, 5705), (4109, 5906), (4109, 6832), (4109, 6959), (4109, 7373), (4109, 7989), (4109, 8234), (4109, 8525), (4109, 8859), (4109, 9919), (4109, 9997), (4109, 2241), (4109, 6873), (4109, 8911), (4109, 533), (4109, 739), (4109, 1009), (4109, 2327), (4109, 2358), (4109, 2443), (4109, 2786), (4109, 3323), (4109, 3526), (4109, 3560), (4109, 4404), (4109, 4669), (4109, 5142), (4109, 8270), (4109, 8476), (4109, 3114), (4109, 449), (4109, 1226), (4109, 1327), (4109, 3785), (4109, 4187), (4109, 4490), (4109, 4561), (4109, 5068), (4109, 5402), (4109, 5625), (4109, 6073), (4109, 6373), (4109, 8157), (4109, 9105), (4109, 9188), (4109, 534), (4109, 1284), (4109, 1731), (4109, 1887), (4109, 2188), (4109, 2638), (4109, 2665)]

如果我尝试正常绘制图形,则会得到随机位置:

RRR=nx.Graph()
RRR.add_edges_from(edges)
nx.draw(RRR)

是否有一种方法可以绘制此图,并根据nodesWithGroup词典中的值对节点进行分组。我尝试应用this question中描述的方法,但我不知道如何应用逻辑。

python dictionary matplotlib networkx graph-theory
3个回答
0
投票

我不确定为什么当前的答案没有真正解决实际绘制图形的问题。这可以通过稍微调整链接问题中的逻辑来实现。请注意,我已经更改了半径值,因为图形具有许多节点和边缘,并且增加了图形的大小。另外,我更改了接受问题中字典输入的逻辑。在绘制节点时,我为带有edgecolors=[(0,0,0,1)]的节点添加了边框,因为某些节点是白色或灰白色的,这使得它们很难看清。

代码:

import networkx
import numpy as np

# Set up graph, adding nodes and edges
RRR = nx.Graph()
RRR.add_nodes_from(nodesWithGroup.keys())
RRR.add_edges_from(edges)

# Create a dictionary mapping color to a list of nodes
nodes_by_color = {}
for k, v in nodesWithGroup.items():
    if v not in nodes_by_color:
        nodes_by_color[v] = [k]
    else:
        nodes_by_color[v].append(k)

# Create initial circular layout
pos = nx.circular_layout(RRR)

# Get list of colors
colors = list(nodes_by_color.keys())

# OPTIONAL: shuffle colors list to get a random arrangement of colors
# import random
# random.shuffle(colors)

# Apply logic from linked answer: https://stackoverflow.com/a/55764135/12366110
# Note altered radius value. In addition, we get the value of posx from the colors list.
angs = np.linspace(0, 2*np.pi, 1+len(colors))
repos = []
rad = 13
for ea in angs:
    if ea > 0:
        repos.append(np.array([rad*np.cos(ea), rad*np.sin(ea)]))

for color, nodes in nodes_by_color.items():
    posx = colors.index(color)
    for node in nodes:
        pos[node] += repos[posx]


# Plot graph
plt.figure(figsize=(20,20))

for color, nodes in nodes_by_color.items():
    nx.draw_networkx_nodes(RRR, pos=pos, nodelist=nodes, node_color=color, edgecolors=[(0,0,0,1)])

nx.draw_networkx_edges(RRR, pos=pos)
plt.show()

输出:

enter image description here


-1
投票

您需要创建一个像这样的DataFrame,称为nodesWithGroup_edges

10    'skyblue'    6    176
4109  'lawngreen'  6    283

使用此代码后:

import pandas as pd
#Loop for each value unique in your color column
for cluster_group in pd.unique(nodesWithGroup_edge.iloc[:,1]):
  #filter dataframe by the color and plot each edge with the same color      
  ax.scatter(nodesWithGroup_edges[nodesWithGroup_edge.iloc[:,1] == cluster_group].iloc[:, 2], 
  nodesWithGroup_edge[nodesWithGroup_edge.iloc[:,1] == cluster_group].iloc[:, 3], c = cluster_group)

-1
投票

您可以“反转”原始字典以获得具有所需内容的字典:

reversed_dict = {}
for k,v in nodesWithGroup.items():
    if v not in reversed_dict:
        reversed_dict[v] = []
    reversed_dict[v].append(k)

print(reversed_dict)

{'slateblue':[6,6547,1206,6058],'skyblue':[10,6317,8396,288,2358,4407,4433,4480,6566,8615,2521,2628,2696,2834, 6959,828,6986,2928,9098,2955,9105,2977,5068,9188,5092,3240,5296,5393,5402,5450,5625,7714,3643,3661,5747,1681,1877],“ lawngreen” :[4109,4256,4264,4374,395,399,6686,8810,7061,2967,7076,3114,7293,3425,5539,1471,1644,1857,3936,8122,8157,6141],“ mediumaquamarmarine” :[2062,36,10297,8457,8525,394,4667,6764,8859,4836,6915,6977,9077,4984,2964,7098,7132,3056,1009,5256,7305,3224,7393,7394, 9653,7702,7806,10013,7989,8092,6071,2033],'橄榄':[28,8270,4360,6435,377,2633,615,2665,4849,6917,970,9216,3500,7851, 3770,1731,3932,1978],'深红':[10269,10271,8234,4187,8285,2205,6318,176,8387,2597,4843,9311,3258,3366,1464,3560,3775,3785, 10045,8084,6105],'aqua':[6175],'darkturquoise':[2085,4231,2313,8561,2443,587,4733,667,792,5051,9153,969,5241,3222,356 9,1645,7966,1876,1936],'navajowhite':[2084,2092,2188,2832,4997,996,3296,7515,5544,7648,1725,6129],'银':[6187,4154, 2156、8310、6371、233、2327、4415、393、501、4652、2606、2750、2786、746、2803、755、2830、2861、902、5030、1105、1110、1136、3269、1284、3334, 3339,1327,3417,1417,7565,3490,3538,5673,3702,3765,3783,7895,3820,9997,1889,8043,6020,6074],'灰色':[8259,128,2210,2241, 219,315,4436,4497,446,4584,6660,4648,556,8775,647,6794,2698,8868,8888,8967,4964,911,964,7129,7149,5245,5259,9479,9481, 9517、5429、3407、5546、5556、1512、5685、5686、5700、3806、7922、5906、5924、5974、6108],“棕褐色”:[88、229、533、2599、8768、6873、4908, 9172,3122,3165,3262,1273,7633,3561,3632,9844],'lightsalmon':[6243,129,2228,4501,4805,1572,1742],'beige':[2150,4677,2800, 5199、9890、6030],“ lavenderblush”:[8302、5426、3498、5688、4022、2005],“ royalblue”:[4211、269、4566、6728、3198、5272、3320、1283、7533、7908, 8 118],“ limegreen”:[4219、8367、4365、4507、4851、7010、2999、3147、3259、1291、5466、5681、5927],“ darkorange”:[124、2345、8498、2625、2651, 2733,5152,9448,9526,1347,1452,9674,1740,3823,1904,4026,2003],'blueviolet':[161,6475,4491,449,4622,6748,6886,6911,9092,7112, 7373,9465,9480,9607,5607,6035,6073],'darkgoldenrod':[4265,6373,4329,8471,8476,4404,2453,6551,6639,4672,590,687,6907,8979,4931, 858,1165,7376,5479,3509,3526,3607,7720,3858],'蓟':[6332,4496,2796,878,3397,3489,3608],'antiquewhite':[4288,4708,4774, 7417,3323,9905,3797,3886,3900],'棕色':[8441,9824],'lightsteelblue':[6395,6813,9548,7730,5705],'mediumslateblue':[283,2338,295, 4573,998],'darkslategrey':[2340,2369,6614,4599,8730,8736,2622,2638,6749,645 6832,8911,6881,739,4932,5122,1047,5172,7234,1172, 3266、1357、3453、1443、3690、3704、3713、8099、6057、6066、10225],“ ghostwhite”:[4390、2405、4490、4820、2775、4870、6943, 6950,867,991,1001,7196,1075,7224,3155,5204,7262,1160,1196,1226,5323,9420,1386,1391,3650,3658,1665,5784,1705,9919,5886,3841, 1824,8095],'darkolivegreen':[4561,2624,6753,6769,8924,1511,5768],'olivedrab':[534,4723,2771,4928,3830,1986],'lightslategrey':[4669, 5142、9358、5377],“光积分”:[750、7228、3386、1408、1413、7663、1811、1822、1921、1932、10140],“ gainsboro”:[9203、7625、10063、1887],“薰衣草':[3764,3908]}

© www.soinside.com 2019 - 2024. All rights reserved.