簡體   English   中英

根據Python中的類標簽繪制數據點

[英]Plot data point according to their class labels in Python

我正在嘗試繪制顏色對應於其類標簽的數據點。 在數據可視化方面,我對R更熟悉。 在R中,我將執行以下操作:

x = matrix(runif(100), 2, 20)
y = matrix(runif(100), 2, 20)
labels = c(rep(0, 20), rep(1, 20))
plot(rbind(x, y), col = labels)

然后,我將能夠散布兩個類別的數據點的散點圖,它們的點顏色是標簽。 我不確定如何在python中執行此操作。 到目前為止,我所做的是

import numpy
plot(numpy.vstack((x,y)), c = labels) 

但是顯然python不喜歡顏色的整數值。...您的幫助將不勝感激!

您走在正確的軌道上。 您有三個數據向量: xyc ,其中c是帶有類標簽的整數數組。

您可以做的最簡單的事情是:

import matplotlib.pyplot as plt
import numpy as np

# create some random data grouped into three groups
x = np.random.random(100)
y = np.random.random(100)
c = np.random.choice(range(3), 100)

# plot the data
fig = plt.figure()
ax = fig.add_subplot(111)
# plot x,y data with c as the color vector, set the line width of the markers to 0
ax.scatter(x, y, c=c, lw=0)

這給您:

在此處輸入圖片說明

如果要進一步控制顏色,甚至可以創建自己的顏色表,例如:

mycolors = np.array([ 'g', 'm', 'c' ])
ax.scatter(x, y, c=mycolors[c], lw=0)

現在,顏色為0 =綠色,1 =洋紅色,2 =青色:

在此處輸入圖片說明

當然,您也可以指定三色(RGB)或四色(RGBA)代替顏色名稱。 這使您可以進行更精細的控制。

您也可以使用內置的顏色圖或創建自己的顏色圖。 我只是發現上述解決方案對於離散數據(只有很少的可能值)最為透明。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM