how to plot string data on x axes

61 views (last 30 days)
my workspace
cases 333*1 double
names 333*1 cell
names includes countries name
cases includes covid cases
i want to plot names on x axes and cases on y axes
plot(names ,cases)
>>Error using plot
Invalid first data argument

Accepted Answer

Scott MacKenzie
Scott MacKenzie on 29 May 2021
Edited: Scott MacKenzie on 29 May 2021
% test data
cases = randi(100, 1, 5); % number of covid cases
names = { 'abc' 'def' 'ghi' 'jkl' 'mno' }; % country names
% organize data in cell array and sort
C = [num2cell(cases') names'];
C = sortrows(C, -1); % descending by number of cases
% cases on y axis, names on x axis
set(gca, 'xticklabels', C(:,2));
Scott MacKenzie
Scott MacKenzie on 29 May 2021
OK, good. I've modified the code to include sorting by number of covid cases in descending order.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!