for k2 = 1:22
data2 = mean(cellfun(@(x) x(k2,4), thething))
plot(data2,'-')
end
this is my codes. thething is my arrays contain cells. After I run the scripts, the plot just show nothing on it. Please tell me what's wrong with my code?

8 Kommentare

KSSV
KSSV am 27 Jun. 2018
what is size and class of data2?
Kuang-Yu WANG
Kuang-Yu WANG am 27 Jun. 2018
it shows a number
Stephen23
Stephen23 am 27 Jun. 2018
Probably plotting inside the loop is not useful. Put the values in an array, and then plot that after the loop.
Kuang-Yu WANG
Kuang-Yu WANG am 27 Jun. 2018
tried. but the result is still. the line do not shows up
Stephen23
Stephen23 am 28 Jun. 2018
Bearbeitet: Stephen23 am 28 Jun. 2018
@Kuang-Yu WANG: your comment states that the size of the data that you are plotting is 1x1: this will not be visible unless you change the marker type. In any case, even if you specify the marker you will not get a line unless you do what I recommended earlier: collect the data into one matrix and then plot it after the loop. The plot help has plenty of examples (in fact all of the examples) showing how to plot matrices, so start by looking at that.
Ankita Bansal
Ankita Bansal am 28 Jun. 2018
Hi, can you share " thething" ?
Kuang-Yu WANG
Kuang-Yu WANG am 28 Jun. 2018
thething = 63×1 cell array
{ 26×7 double} { 42×7 double} { 28×7 double} { 22×7 double} { 29×7 double} { 26×7 double} { 35×7 double} { 25×7 double} { 35×7 double} { 23×7 double} { 41×7 double} { 22×7 double} { 28×7 double} { 31×7 double} { 30×7 double} { 40×7 double} { 33×7 double} { 32×7 double} { 33×7 double} { 85×7 double} { 49×7 double} { 86×7 double} { 56×7 double} { 70×7 double} { 59×7 double} { 42×7 double} { 65×7 double} { 50×7 double} { 76×7 double} { 44×7 double} { 54×7 double} { 62×7 double} { 82×7 double} { 55×7 double} { 45×7 double} { 66×7 double} { 74×7 double} { 80×7 double} { 47×7 double} { 59×7 double} { 69×7 double} { 45×7 double} {105×7 double} { 98×7 double} {109×7 double} {118×7 double} {102×7 double} { 74×7 double} { 63×7 double} { 77×7 double} {169×7 double} {181×7 double} {240×7 double} {212×7 double} {150×7 double} {243×7 double} {251×7 double} {281×7 double} {281×7 double} {269×7 double} {281×7 double} {281×7 double} {211×7 double}
Stephen23
Stephen23 am 28 Jun. 2018
@Kuang-Yu WANG: please upload your data in a .mat file by clicking the paperclip button.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

KSSV
KSSV am 27 Jun. 2018

0 Stimmen

figure
hold on
for k2 = 1:22
data2 = mean(cellfun(@(x) x(k2,4), thething))
plot(data2,'-')
end

4 Kommentare

Kuang-Yu WANG
Kuang-Yu WANG am 27 Jun. 2018
Sorry still don't work.
KSSV
KSSV am 27 Jun. 2018
What is class and size of data2?
size(data2)
ans =
1 1
Kuang-Yu WANG
Kuang-Yu WANG am 28 Jun. 2018
it works after i use the brush to select the data in screen. however why can't I plot out a line but just many dots?

Melden Sie sich an, um zu kommentieren.

Produkte

Gefragt:

am 27 Jun. 2018

Kommentiert:

am 28 Jun. 2018

Community Treasure Hunt

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

Start Hunting!

Translated by