Legend guckt einfach nur das aktuelle axes Object an, sucht die children
von vorne nach hinten ab und gibt den ersten N (in deinem Fall N = 5)
Kindern in den Farben, wie sie geplottet werden einen Namen.
Vergleiche mal:
1 | figure
|
2 | subplot(211)
|
3 | hold all
|
4 | x = 1:5;
|
5 | plot(x, rand(length(x), 3), 'linewidth', 1.5); % plotte 3 verschiedene zufällige Kurven und speichere die handles
|
6 | plot(x,rand(length(x), 2), 'linewidth', 1.5); % 2 weitere
|
7 | legend({'eins','vier','fünf'})
|
8 |
|
9 | subplot(212)
|
10 | hold all
|
11 | h = gobjects;
|
12 | h(1:3) = plot(x, rand(length(x), 3), 'linewidth', 1.5); % plotte 3 verschiedene zufällige Kurven und speichere die handles
|
13 | h(4:5) = plot(x, rand(length(x), 2), 'linewidth', 1.5); % 2 weitere
|
14 | legend(h([1 4:5]),{'eins','vier','fünf'})
|
Im ersten Fall schreibt der halt an die ersten 3 Plots die Legende. Im
zweiten Fall genau denen, die du ausgewählt hast, indem du die plot
handles mitgibst.
In deinem Fall passiert das, weil laut
http://www.mathworks.com/help/stats/histfit.html bei h = histfit(bla)
ebenfalls zwei handles zurück gegeben werden, einmal der plot handle zu
deinem histogram h(1) und zu deinem density plot h(2).
Klarer geworden?
Schöne Grüße,
Jan