Перейти к содержанию
    

нарисовать многоканальный сигнал для ЭЭГ в матлабе

У нас есть 2 массива данных:

х -сигнал, размерность 49х144384

y- отфильтрованный сигнал , размерность 49х144384

по одному значению (каналу) соответсвует 144384 значения-для одного канала одна строка

Необходима графически отобразить по каждому каналу оба сигнала х, у

 

Т.е. получится 48 графиков на станице, масштаб которых можно было бы увеличивать и уменьшеть , на каждом из которых х1,у1; х2, у2 ...х49, у49 просто разным цветом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость TSerg

Excel не пробовали?

 

Число значений необходимо уменьшить до разумного предела каким-либо методом, т.к. все равно больше 1000 пикселей на дисплее уже ни к чему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Excel не пробовали?

 

Число значений необходимо уменьшить до разумного предела каким-либо методом, т.к. все равно больше 1000 пикселей на дисплее уже ни к чему.

Я вот пробовала Origin'ом тоже длиннющую последовательность. Точно не помню - несколько миллионов. Надо набраться терпения. ТЕРПЕНИЯ. Про пиксели не так уж и важно - масштаб можно менять, но вот смотреть на 49 графиков на одном листе...

Это ж какие нужно иметь глаза? И несущую их голову.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько понимаю, в ЭЭГ важно иметь возможность именно одновременно наблюдать множество кривых.

Решение наверное только одно: разбить область отрисовки на нужное число зон (49 в этом случае), каждую кривую привести к поддиапазону и отображать со смещением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У нас есть 2 массива данных:

х -сигнал, размерность 49х144384

y- отфильтрованный сигнал , размерность 49х144384

по одному значению (каналу) соответсвует 144384 значения-для одного канала одна строка

Необходима графически отобразить по каждому каналу оба сигнала х, у

 

Т.е. получится 48 графиков на станице, масштаб которых можно было бы увеличивать и уменьшеть , на каждом из которых х1,у1; х2, у2 ...х49, у49 просто разным цветом

 

Если вы хотите на одном графике вывести 2 переменных разными цветами, то пишете:

 

figure; hold on; plot(x,'r');plot(y,'g');legend('x','y');hold off;

 

Если надо на одной фигуре несколько графиков друг под другом - добавляете перед графиком

subplot(49,1,1); ... subplot(49,1,49);

 

Только даже 8 графиков друг под другом по моему уже не информативны.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вам нужно что-то вроде этого?

в матлабе можно вывести множество графиков при помощи subplot, как советует _4afc_, но вот еще вопрос - при измененииоси X(Y) на одном из графиков, остальные графики должны изменять положение области просмотра, масштаб, и.т.п.

Т.е. как соотносить картинки друг с другом при изменении областей просмотра, развернуть одну из картинок на весь экран тоже не получится.

post-36992-1390566479_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в матлабе можно вывести множество графиков при помощи subplot, как советует _4afc_, но вот еще вопрос - при измененииоси X(Y) на одном из графиков, остальные графики должны изменять положение области просмотра, масштаб, и.т.п.

 

Наверно надо применить ко всем новые параметры например:

subplot(49,1,1); axis([10 100 -1 1]);

subplot(49,1,2); axis([10 100 -1 1]);

...

subplot(49,1,49); axis([10 100 -1 1]);

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Т.е. получится 48 графиков на станице, масштаб которых можно было бы увеличивать и уменьшеть , на каждом из которых х1,у1; х2, у2 ...х49, у49 просто разным цветом
Слишком большая размерность по столбцам. Ничего толком разобрать будет не можно.

Попробуйте строки оставить все, разбить вдоль столбцов на страницы меньшей длины, и в таком виде выводить на экран.

Len=500;
Wid=49;
M=rand(Wid, Len)-0.5;
b=ones(1,25);
M=filter(b,1,M,[],2); 

N=M/4 + kron((1:Wid)',ones(1,Len));

figure (1)
plot(N')
ylim([-1 51])

figure(2)
pcolor(M)
shading flat

figure(3)
mesh(M)

clear all

Можно организовать интерактивное перелистывание, чтобы бегать по массиву туда-сюда.

Отдельные картинки для каждого канала, или субкартинки, МСМ, лучше не делать.

Если всё же решите, разбейте массив на 7 частей по 7 строк.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Наверно надо применить ко всем новые параметры например:

subplot(49,1,1); axis([10 100 -1 1]);

subplot(49,1,2); axis([10 100 -1 1]);

...

subplot(49,1,49); axis([10 100 -1 1]);

я имел ввиду интерактивно...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...