bar graph with non numerical x-axis

I have data which I have attached to the question (T_Stand_For_Sum). I want to display the first column as x-axis points, with the second column values as the bar heights. I have tried the following and recieved the following errors
xbar = T_Stand_For_Sum.ADBStand;
ybar = T_Stand_For_Sum.KWH;
bar(xbar,ybar);
Error using bar (line 41)
Not enough input arguments.
Error in Model_V_04 (line 234)
bar(xbar,ybar);
xbar = categorical({'T_Stand_For_Sum.ADBStand'});
ybar = T_Stand_For_Sum.KWH;
bar(xbar,ybar);
Error using bar (line 213)
Data inputs must match the axis configuration. A numeric axis must have numeric data inputs or data
inputs which can be converted to double.
Error in Model_V_04 (line 232)
bar(xbar,ybar);
bar(categorical(T_Stand_For_Sum{1:k, 1}), T_Stand_For_Sum{1:k, 2});
Error using bar (line 213)
Data inputs must match the axis configuration. A numeric axis must have numeric data inputs or data
inputs which can be converted to double.
Error in Model_V_04 (line 223)
bar(categorical(T_Stand_For_Sum{1:k, 1}), T_Stand_For_Sum{1:k, 2});

 Respuesta aceptada

Simon Chan
Simon Chan el 4 de Ag. de 2021
Try this:
bar(categorical(T_Stand_For_Sum.ADBStand),T_Stand_For_Sum.KWH)

4 comentarios

Mark Maders
Mark Maders el 4 de Ag. de 2021
I still recieve an error with this line of code
Error using bar (line 213)
Data inputs must match the axis configuration. A numeric axis must have numeric data inputs or data
inputs which can be converted to double.
Error in Model_V_04 (line 238)
bar(categorical(T_Stand_For_Sum.ADBStand),T_Stand_For_Sum.KWH)
Mark Maders
Mark Maders el 4 de Ag. de 2021
T_Stand_For_Sum is a table. Is this why the error is appearing? I have tried converting it to other formats but cannot manage that either
Forgot to mention one step:
(1) You may close figure 1 and then run the script, or
(2) Put figure 2 as follows, you will get two figures
load('T_Stand_For_Sum.mat');
figure(2);
bar(categorical(T_Stand_For_Sum.ADBStand),T_Stand_For_Sum.KWH)
Mark Maders
Mark Maders el 4 de Ag. de 2021
thank you that is working now

Iniciar sesión para comentar.

Más respuestas (1)

Peter Perkins
Peter Perkins el 5 de Ag. de 2021
Simon's solution is one way to do it. But using categorical just to label the bars is kind of an abuse of categorical, which is intended to represent data where you have a large number of elements drawn from a small number of discrete values. Lots of repeated values.
Another way to label the bars is to just label them:
>> bar(T_Stand_For_Sum.KWH)
>> set(gca,"XTick",1:33,"XTickLabel",T_Stand_For_Sum.ADBStand)

Categorías

Productos

Versión

R2021a

Etiquetas

Preguntada:

el 4 de Ag. de 2021

Respondida:

el 5 de Ag. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by