Plot shows no line, only markers
Show older comments
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.');
Answers (1)
Steven Lord
on 14 Sep 2020
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 Comments
Phillip Maus
on 14 Sep 2020
Walter Roberson
on 14 Sep 2020
Gaps are also left at infinite values.
Communities
More Answers in the ThingSpeak Community
Categories
Find more on Visualize Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!