![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189200/image.jpeg)
How to plot temporal changes in batches of data?
2 次查看(过去 30 天)
显示 更早的评论
Hello! I have a CSV file with the following example content:
SSID,RSS,Unit,Time,Batch
AP1,-40,dBm,11:11:11,0
AP2,-44,dBm,11:11:11,0
AP3,-90,dBm,11:11:11,0
AP1,-50,dBm,13:30:00,1
AP2,-66,dBm,13:30:00,1
AP3,-20,dBm,13:30:00,1
AP1,-2,dBm,15:00:00,2
AP2,-30,dBm,15:00:00,2
AP3,-40,dBm,15:00:00,2
And I'm wanting to plot each of the SSIDs with their RSS (received signal strength) with respect to its batch.
So far, I've tried plotting each of the RSS for each batch and get the following figure:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/191219/image.png)
However, my goal is to connect these lines in a distinct way to show their temporal trend, like so:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/191220/image.png)
Any pointers on how this might be done?
0 个评论
采纳的回答
更多回答(1 个)
Kelly Kearney
2018-6-12
Assuming your file is read into a table array, I think the quickest way to do this is to unstack the SSID data and then plot:
tbl = readtable('data.csv');
tblu = unstack(tbl, 'RSS', 'SSID');
plot(tblu.Batch, [tblu.AP1 tblu.AP2 tblu.AP3]);
Depending on the number of unique SSIDs, you may prefer to concatenate the unstacked values programmatically, but here I simply typed it manually.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Axis Labels 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!