App designer table handling

9 views (last 30 days)
Karol Lach
Karol Lach on 14 Sep 2022
Using windspeedexample, I created an app to read data from selected public Thingspeak channel and use it to plot.
I also wanted to add a table to store currently read records, which works, but has one significant problem - data in the table is getting rewritten in the first row. How do I make it so that every new input creates new row?
App is in the attachments in .mlapp form. Sorry for the language, it's in polish but every input is filled so you can see what is going on. If there is no data logging, change channel ID (upper input) to 12397, dropdown to position 2, time intervals (lower position) to 5.
  1 Comment
Karol Lach
Karol Lach on 15 Sep 2022
Solved by creating isempty check and creating a loop with 2 tables.
tab = table(time,value,indexvalue);
if isempty(app.UITable.Data) == 1
app.UITable.Data = tab;
end
tab2 = [app.UITable.Data; tab];
app.UITable.Data = tab2;

Sign in to comment.

Answers (1)

Christopher Stapels
Christopher Stapels on 19 Sep 2022
Thanks for showing the result Karol. Im taking your solution and adding it to the answers to help others find it.
Solved by creating isempty check and creating a loop with 2 tables.
tab = table(time,value,indexvalue);
if isempty(app.UITable.Data) == 1
app.UITable.Data = tab;
end
tab2 = [app.UITable.Data; tab];
app.UITable.Data = tab2;

Communities

More Answers in the  ThingSpeak Community

Categories

Find more on ThingSpeak in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!