disegnare istogrammi in matlab

Messaggioda mascalzone87 » 02/04/2012, 17:59

Ragazzi avrei bisogno del vostro aiuto: dovrei disegnare un semplice istogramma in matlab: in pratica vorrei avere un grafico in cui ciascuna barra (di un colore diverso) abbia l'altezza pari al numero definito come componente di un vettore precedentemente scritto.

Ho provato a vedere qualcosa con le funzioni bar e hist ma non sono riuscito a produrre niente.

Vi ringrazio anticipatamente.
mascalzone87
New Member
New Member
 
Messaggio: 21 di 56
Iscritto il: 02/04/2010, 22:34

Re: disegnare istogrammi in matlab

Messaggioda Dirk_Pitt » 05/04/2012, 15:39

Devi usare la versione di bar che riceve in input due vettori, ovvero bar(x,y).

Vai su questa pagina, http://www.mathworks.it/help/techdoc/ref/bar.html, e scorri verso il basso fin quando non trovi gli esempi relativi a questa function.

[EDIT]
scusa forse non avevo capito cosa vuoi fare; hai un vettore x=[x1,...,xn] e vuoi semplicemente disegnare un istogramma con n barre di altezza x1,...,xn ? In tal caso ti basta fare
Codice:
bar(x)

[/EDIT]

Ciao
Dirk_Pitt
Starting Member
Starting Member
 
Messaggio: 10 di 38
Iscritto il: 01/05/2008, 21:53

Re: disegnare istogrammi in matlab

Messaggioda mascalzone87 » 05/04/2012, 22:45

Grazie mille!!! Il tuo aiuto è stato prezioso...non so perchè dall'help di matlab (dal workspace per intenderci) non l'ho avevo capito!

Ecco cosa ho prodotto:

Codice:
y=[1 2 3 4] % vettore le cui componenti rappresentano le altezze delle barre

x=[2 4 6 8] % "etichetta" di ciascuna barra

figure

bar(x,y)
axis([0 10 0 5]);


questo è il risultato:

Immagine

Però mi sapresti dire come posso fare per asseggnare un colore diverso a ciascuna barra? in modo poi da creare una legenda con il comando legend.

Grazie mille per l'aiuto.
mascalzone87
New Member
New Member
 
Messaggio: 22 di 56
Iscritto il: 02/04/2010, 22:34

Re: disegnare istogrammi in matlab

Messaggioda Dirk_Pitt » 06/04/2012, 09:52

A me non sembra una buona idea. L'istogramma è un grafico omogeneo, che si riferisce ad una sola fonte, quindi perchè colorare le barre singolarmente?
Cmq se sei certo di volerlo fare prova a seguire questo http://chi3x10.wordpress.com/2008/03/10/histograms-of-two-set-of-data-with-different-color-in-matlab/
Dirk_Pitt
Starting Member
Starting Member
 
Messaggio: 11 di 38
Iscritto il: 01/05/2008, 21:53

Re: disegnare istogrammi in matlab

Messaggioda mascalzone87 » 06/04/2012, 12:43

Dirk_Pitt ha scritto:A me non sembra una buona idea. L'istogramma è un grafico omogeneo, che si riferisce ad una sola fonte, quindi perchè colorare le barre singolarmente?
Cmq se sei certo di volerlo fare prova a seguire questo http://chi3x10.wordpress.com/2008/03/10/histograms-of-two-set-of-data-with-different-color-in-matlab/


Si a me serve così.

Grazie al tuo aiuto guarda il risultato:

Immagine

Che te ne pare?

E' chiaro?

Ovviamente è una prova non è il mio caso...ma cambieranno solo i valori ed il nuemrio di barre :D
mascalzone87
New Member
New Member
 
Messaggio: 23 di 56
Iscritto il: 02/04/2010, 22:34

Re: disegnare istogrammi in matlab

Messaggioda signfra » 09/01/2016, 13:15

in simulink mi da il seguente errore

The function 'bar' is not supported for standalone code generation. See the documentation for coder.extrinsic to learn how you can use this function in simulation.

come mai? mentre eseguendolo in un file.m normalmente funziona.


ho la versione Mathlab R2015B, ha voi funziona?
signfra
Junior Member
Junior Member
 
Messaggio: 116 di 304
Iscritto il: 20/09/2012, 17:35

Re: disegnare istogrammi in matlab

Messaggioda aleso » 30/09/2019, 11:45

mascalzone87 ha scritto:Ragazzi avrei bisogno del vostro aiuto: dovrei disegnare un semplice istogramma in matlab: in pratica vorrei avere un grafico in cui ciascuna barra (di un colore diverso) abbia l'altezza pari al numero definito come componente di un vettore precedentemente scritto.

Ho provato a vedere qualcosa con le funzioni bar e hist ma non sono riuscito a produrre niente.

Vi ringrazio anticipatamente.


Ciao, io avrei il tuo stesso problema. Vorrei sapere come sei riuscito a risolvere
aleso
Starting Member
Starting Member
 
Messaggio: 14 di 28
Iscritto il: 31/08/2016, 20:53


Torna a Informatica

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite