python 莫煩matplotlib 在matplotlib散點圖



莫煩matplotlib (1)

這是我的第一個matplotlib程序,所以對於我的無知感到抱歉。

我有兩個字符串數組。 比如說A = ['test1','test2']B = ['test3','test4'] 。 如果AB元素之間存在任何關聯,那麼它們的corr值將被設置為1

        test1 | test2
test3 |   1   |   0

test4 |   0   |   1

現在,我想繪製一個散點圖,其中我的X軸將是A元素,Y軸將是B元素,如果相關值為1 ,則將在散點圖中進行標記。 怎麼做?


也許這樣的事情:

import matplotlib.pyplot
import pylab

x = [1,2,3,4]
y = [3,4,8,6]

matplotlib.pyplot.scatter(x,y)

matplotlib.pyplot.show()

編輯:

讓我看看我現在是否正確理解你:

你有:

       test1 | test2 | test3
test3 |   1   |   0  |  1

test4 |   0   |   1  |  0

test5 |   1   |   1  |  0

現在,您要在散點圖中表示上述值,使得1的值由點表示。

假設您的結果存儲在二維列表中:

results = [[1, 0, 1], [0, 1, 0], [1, 1, 0]]

我們想把它們變成兩個變量,所以我們可以繪製它們。

我相信這段代碼會給你你正在尋找的東西:

import matplotlib
import pylab


results = [[1, 0, 1], [0, 1, 0], [1, 1, 0]]

x = []
y = []

for ind_1, sublist in enumerate(results):
    for ind_2, ele in enumerate(sublist):
        if ele == 1:
            x.append(ind_1)
            y.append(ind_2)       


matplotlib.pyplot.scatter(x,y)

matplotlib.pyplot.show()

請注意,我確實需要導入pylab ,並且可以使用軸標籤。 此外,這感覺就像一個工作,可能有(可能是)一個直接的方法來做到這一點。





scatter-plot