Error using plot Invalid first data argument

4 次查看(过去 30 天)
I have an imported data set year:value1:value2 format. I assigned variables, year=C{1}; opioid_deaths=C{2}; heroin_deaths=C{3} This is my code for trying to create a plot - I keep getting the "error using plot; invalid first data argument"
% code
year=C{1};
plot(x,opioid_deaths,'b--+','LineWidth',2,x,heroin_deaths,'r:*','LineWidth',2)
title('Number of Opioid and Heroin Deaths in Maryland from 2007''FontSize',24,'FontName','Helvetica')
xlabel('Year','FontSize',18,'FontName','Helvetica')
ylabel('Number of deaths','FontSize',18,'FontName','Helvetica')
legend('Opioid deaths','Heroin deaths','Location','southwest','FontSize',18,'FontName','Helvetica')
hold on
% end
  2 个评论
Walter Roberson
Walter Roberson 2017-11-29
What is class(x) and class(opioid_deaths) ? And which MATLAB release are you using?
Grace Hillman
Grace Hillman 2017-11-29
Class of opioid_deaths and heroin_deaths are both double. Sorry, I meant to replace x with the variable year (which is also class double).
I am using Matlab R2016A

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2017-11-29
I suspect that x is class datetime and that you are using a MATLAB version before R2016b; R2016b was the version that introduced using datetime for the x axis.
  2 个评论
Walter Roberson
Walter Roberson 2017-11-30
All name/value pairs must go at the end of the list, and you can only set linewidth for everything at once, not individually.
plot(x, opioid_deaths, 'b--+', x, heroin_deaths, 'r:*', 'LineWidth', 2)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by