Plot shows no line, only markers

7 vues (au cours des 30 derniers jours)
Phillip Maus
Phillip Maus le 14 Sep 2020
Commenté : Walter Roberson le 14 Sep 2020
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.');

Réponses (1)

Steven Lord
Steven Lord le 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 commentaires
Phillip Maus
Phillip Maus le 14 Sep 2020
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 le 14 Sep 2020
Gaps are also left at infinite values.

Connectez-vous pour commenter.

Communautés

Plus de réponses dans  ThingSpeak Community

Catégories

En savoir plus sur Visualize Data dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by