これは私の最初のmatplotlibプログラムなので、無知でごめんなさい。
文字列の配列が2つあります。たとえば、A = ['test1','test2']
とB = ['test3','test4']
です。 A
要素とB
要素の間に相関関係がある場合、それらの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がドットで表されるように、散布図で上記の値を表します。
結果が2次元リストに保存されているとしましょう:
results = [[1, 0, 1], [0, 1, 0], [1, 1, 0]]
それらを2つの変数に変換して、プロットできるようにします。
そして、私はこのコードがあなたが探しているものをあなたに与えると信じています:
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
をインポートする必要があることに注意してください。そうすれば、軸ラベルをいじることができます。また、これは回避策のように感じられ、これを行う直接的な方法があるかもしれません(おそらくあります)。