Error using plot - not enough input arguments / invalid data argument
22 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
回答 (2 件)
VBBV
2023 年 5 月 10 日
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)
Steven Lord
2023 年 5 月 10 日
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 件のコメント
参考
カテゴリ
Help Center および File Exchange で Data Type Conversion についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
