簡體   English   中英

僅包含分類數據的散點圖

[英]Scatter plot with only categorical data

我想繪制一個散點圖,以可視方式表示形式的數據點(字符串,字符串)。 其中每個坐標是從一組給定的String值中獲取的字符串,其中X軸一組,Y軸一組。 我在尋找一個庫-可能是python-時遇到麻煩,該庫僅表示分類數據(無數值)。

我曾嘗試使用Seaborn swarmplot,但似乎至少有一個坐標必須是數字。

我知道具有兩個相同坐標的點會發生碰撞,我希望找到一個將這些點表示為相鄰點的庫(類似簇)。

謝謝。

熊貓是一個很棒的圖書館。

您可以使用分類變量創建一個數據框(請注意創建數據框的dtype='category'參數),然后獲取每個分類變量的數字代碼,並使用pandas本身或matplotlib或任何您喜歡的散點圖。

例:

In [1]: import pandas as pd

In [2]: df = pd.DataFrame({'col1': list('abcab'), 'col2': list('acbbb')}, dtype='category')

In [3]: df
Out[3]:
  col1 col2
0    a    a
1    b    c
2    c    b
3    a    b
4    b    b

In [4]: df_num = df.apply(lambda x: x.cat.codes)

In [5]: df_num
Out[5]:
   col1  col2
0     0     0
1     1     2
2     2     1
3     0     1
4     1     1

In [6]: df_num.plot.scatter('col1', 'col2')

在此處輸入圖片說明

暫無
暫無

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

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