2012-05-10 4 views
0

У меня есть 5 матрица сMatrix (сюжет) - Python

for w in range(len(nR)): 
    c = dot(U2, nR[w]) 

Выход:

c[1 2] 
c[3 4] 
c[2 5] 
c[4 1] 
c[2 2] 

Примечание: с представляет собой скалярное произведение двух матриц, U2 и пк

Стараюсь для назначения

import matplotlib.pyplot as plt  
    x = c[0] 
    y = c[1] 
    plt.scatter(x,y) 
    plt.show() 

но только один пункт нанесен на график. Я пытался сделать цикл, но, похоже, не работает.

Прошу вас, руководствоваться этим. Благодаря!

+2

Вы говорите «5 матрицы C», а затем даете то, что недействительно Python. Что такое 'C'? Также обратите внимание, что [PEP-8] (http://www.python.org/dev/peps/pep-0008/) рекомендует зарезервировать 'CapWords' для классов и использовать' lowercase_with_underscores' для локальных переменных. –

+0

Вы имеете в виду 5 колонок матрицы? –

+0

'5 * 2' matrix' C'? –

ответ

0

Давайте предположим c ваш список координат:

c = [(1, 2), (3, 4), (2, 5), (4, 1), (2, 2)] 

Тогда вы:

import matplotlib.pyplot as plt 
x=[i[0] for i in c] 
y=[i[1] for i in c] 
plt.scatter(x,y) 
plt.show() 

Список x содержит ваши значения х и y содержит свои значения у.

+0

Спасибо! Другой вопрос: если я хочу извлечь 'c' прямо из созданного цикла for, то есть без инициализации c на основе вывода. Есть ли способ назначить матрицы, сгенерированные в список? Извините, я новичок. :) – SJL

+0

Если мой ответ работает на вас, пожалуйста, не стесняйтесь повышать и принимать его (нажав галочку) :-) –

+0

В вашем коде есть недопустимый питон. Например, вывод python не может быть похож на 'c [1 2]'. Кроме того, _cannot_ быть любым выходом в вашу программу, в первую очередь, поскольку вы ничего не печатаете. Какая форма 'c'? Пожалуйста, поместите более подробную информацию, прежде чем мы сможем помочь вам. –