Division d'une plage dans des bacs en matlab
J'ai la plage suivante à partir d'une beaucoup plus grande de la matrice :
(a)
ans =
94 153 144 59 79 90 131 64
Mon professeur nous demande de faire: Diviser la gamme de N = 10 égalité de longueur des segments (ci-après appelé “poubelles”), et pour chaque bin, trouver ses limites (aj, bj) ainsi que son centre cj.
(5) Placez chaque mesuré le nombre de bactéries xi dans ce bac dont la limite inférieure est inférieure ou égale à xi et dont la limite supérieure est plus grande que xi; par la suite, pour chaque bin de compter le nombre de xi (= nj).
(6) Tracer l'histogramme de la mesure de la numération bactérienne à l'aide de N = 10 bars.
Essayez les fonctions MATLAB hist(x,N) et bar(c, n)
Je sais que c'est beaucoup, mais je n'ai absolument aucune instruction de la part de ce mec et vraiment apprécier un coup de main 🙂
vous pouvez aussi consulter les réponses à cette question: stackoverflow.com/questions/4657719/...
OriginalL'auteur patrick.belon | 2011-10-27
Vous devez vous connecter pour publier un commentaire.
Prenons l'exemple suivant, il faut résoudre tous vos points:
Noter que cette gère correctement la dernière bin (lire cette une question relative à la pour une discussion sur les cas limites)
Comment di-je régler ce problème?
il me semble qu'il vous manque un
1
là:nj = accumarray(binIdx, 1, [nbins 1], @sum);
. Cela peut aussi être simplifiée comme juste:nj = accumarray(binIdx, 1);
Je suis désolé Amro, même avec les 1 ça ne fonctionne pas...
vous devez éditer votre question et après le code que vous utilisez. Je soupçonne que vous faites quelque chose de mal comme mon exemple ci-dessus fonctionne très bien...
OriginalL'auteur Amro
le calcul de l'histogramme:
xout
est bin centres,n
bin compte.de traçage du graphique à barres:
informatique bin bords:
OriginalL'auteur Tal Darom