How can I plot multichannel data in 2d plot like attached image.

On x_axis I have different 128 channels. On left y_axis I have input signal and on right y_axis I have colorbars corresponding to output data. Actually output is represented as color information.

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 17 Juin 2018
Modifié(e) : Ameer Hamza le 17 Juin 2018
You can obtain something similar using pcolor(). For Example
[x, y] = meshgrid(1:128, 0:70); % 2d meshgrid
z = sort(rand(size(x))); % sample data, use your own variable
p = pcolor(x,y,z);
p.EdgeAlpha = 0;
colorbar;
I am using random data points therefore it does not look the same as your image. Note that to display white color on the plot, the corresponding element in z variable must be inf.

3 commentaires

Thanks a lot. It looks perfectly what I was looking for. Great job. I will update u after integrating with my real data.
Cheers,
Aamir
Hi , I tested it with my real data and its working well. Only a minor change, to display white part, is to use (nan). inf did not work for me. I attached plot with real data for other colleagues who would need it in the
future. Once again thanks a lot Ameer Hamza .
Cheers,
Aamir
You are welcome. Also thanks for correcting the mistake and attaching a real example. This might help someone in the future.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by