Error using plot - not enough input arguments / invalid data argument

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"

回答(2 个)

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)
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", "--")
Error using plot
Not enough input arguments.

2 个评论

I'm not sure I understand. I imported data from an excel file as shown in the Workspace, and am trying to plot those points

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Data Type Conversion 的更多信息

产品

版本

R2018a

提问:

Bl
2023-5-10

Community Treasure Hunt

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

Start Hunting!

Translated by