Plot shows no line, only markers

6 次查看(过去 30 天)
Hello,
I want to plot two values from a thingspeak channel in a graph.
If I don't use any optional value for LineSpec, I can't see anything plotted although I don't get an error message and the values on x and y axis are in the correct range.
I f I ad for example a 'b.' (for blue points as markers) as LineSpec, I will see the markers but no line. If I ad an '-' for the solid line ('b.-' or 'b-') it doesn't show anything.
This seems very strange to me. I just want a solid line. How can I fix this? Many thanks!
This is my code:
readChannelID = [1....4];
fieldID1 = [1];
fieldID2 = [2];
readAPIKey = 'OA9........MQ';
[data1, time1] = thingSpeakRead(readChannelID, 'Field', fieldID1, 'NumPoints', 600, 'ReadKey', readAPIKey);
[data2, time2] = thingSpeakRead(readChannelID, 'Field', fieldID2, 'NumPoints', 600, 'ReadKey', readAPIKey);
yyaxis left;
plot(time1, data1,'r.')
% nothing is plotted if I use just use plot(time1, data1) or if I use plot(time1, data1,'r-')
yyaxis right;
plot(time2, data2, 'b.');

回答(1 个)

Steven Lord
Steven Lord 2020-9-14
Do your time and/or data vectors contain NaN values?
any(isnan(time1))
any(isnan(time2))
any(isnan(data1))
any(isnan(data2))
Plotting data containing NaN values leaves a gap in the line where the NaN occurs.
x = 1:10;
y = 1:10;
x(3) = NaN;
y(7) = NaN;
plot(x, y)
With this example there will be a gap between 2 and 4 and between 6 and 8.
  2 个评论
Phillip Maus
Phillip Maus 2020-9-14
yes, I got it now.
There were missing values, I guess.
Fixed it using the fillmissing - function:
data1 = thingSpeakRead(1....9, 'NumDays', 1, 'ReadKey', 'O.............Q','OutputFormat','timetable');
cleanData1 = fillmissing(data1, 'previous');
yyaxis left;
plot(cleanData1.Timestamps, cleanData1.temp, 'b-');
yyaxis right;
plot(cleanData1.Timestamps, cleanData1.hum, 'r-');
Walter Roberson
Walter Roberson 2020-9-14
Gaps are also left at infinite values.

请先登录,再进行评论。

社区

更多回答在  ThingSpeak Community

类别

Help CenterFile Exchange 中查找有关 Visualize Data 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by