Error using plot - not enough input arguments / invalid data argument
18 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
This is a simple plot I'm trying to get and I don't understand why I'm getting this error. I get the same error if I divide the plot line into two:
"plot (x1A, y1A)
hold on
plot (x1B, y1B)
hold off"

0 commentaires
Réponses (2)
VBBV
le 10 Mai 2023
the variables which are trying to plot are cell array of strings from a table. The plot function call takes NUMERIC (DOUBLE) arrays ONLY to graph the data. If the data in variables contain numbers stored as string data type, then you can use str2double or str2num function to convert them to numeric (double) arrays as shown below
% the below variables are cell array of strings from a table & need to be converted
% to numeric arrays
x1A = str2double(Case1ACalculatingFAAverages{:,1})
x1B = str2double(Case1BCalculatingFAAverages{:,1})
y1A = str2double(Case1ACalculatingFAAverages{:,2})
y1B = str2double(Case1BCalculatingFAAverages{:,2})
% plot them
plot(x1A, y1A, x1B, y1B)
1 commentaire
Steven Lord
le 10 Mai 2023
The data you're trying to plot are all string arrays so plot is trying to interpret them as a series of name-value arguments. But you need to give plot some actual data to plot. The following would work:
plot(1:10, 1:10, "Color", "red", "LineStyle", "--")
This wouldn't. You haven't told plot what points to plot.
plot("Color", "red", "LineStyle", "--")
2 commentaires
Voir également
Catégories
En savoir plus sur Data Type Conversion 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!