Comment étiqueter différentes courbes dans Mathematica?
comment étiqueter chacune de ces lignes séparément:
Plot[{{5 + 2 x}, {6 + x}}, {x, 0, 10}]
3 réponses
il y a un code sympa qui vous permet de le faire dynamiquement dans une réponse à comment annoter plusieurs ensembles de données dans ListPlots .
il y a aussi une commande LabelPlot
définie dans la Note technique courbes D'étiquetage dans les tracés
bien sûr, si vous n'avez pas trop d'images à faire,
alors il n'est pas difficile d'ajouter manuellement les étiquettes en utilisant Epilog
, par exemple
fns[x_] := {5 + 2 x, 6 + x};
len := Length[fns[x]];
Plot[Evaluate[fns[x]], {x, 0, 10},
Epilog -> Table[Inset[
Framed[DisplayForm[fns[x][[i]]], RoundingRadius -> 5],
{5, fns[5][[i]]}, Background -> White], {i, len}]]
En fait, vous pouvez faire quelque chose de similaire avec Locators
qui permet de déplacer les étiquettes où vous voulez:
DynamicModule[{pos = Table[{1, fns[1][[i]]}, {i, len}]},
LocatorPane[Dynamic[pos], Plot[Evaluate[fns[x]], {x, 0, 10}],
Appearance -> Table[Framed[Text@TraditionalForm[fns[x][[i]]],
RoundingRadius -> 5, Background -> White], {i, len}]]]
dans ce qui précède j'ai fait les locators prendre la forme des étiquettes, bien qu'il soit également possible de garder un Epilog
comme cela ci-dessus et avoir des locators invisibles qui contrôlent les positions.
Localisateur pourrait également être contraint (en utilisant le deuxième argument de Dynamic
) aux courbes appropriées... mais ce n'est pas vraiment nécessaire.
comme exemple du code ci-dessus avec les fonctions avec les étiquettes déplacées à la main:
fns[x_] := {Log[x], Exp[x], Sin[x], Cos[x]};
Mathematica 9 fournit maintenant des moyens faciles d'inclure des légendes.
Plot[{{5 + 2 x}, {6 + x}}, {x, 0, 10}, PlotLegends -> "Expressions"]
vous pouvez insérer des légendes dans votre parcelle en chargeant le paquet PlotLegends
151930920"
<<PlotLegends`;
Plot[{5+2 x,6+x},{x,0,10},
PlotLegend->{"5+2x","6+x"},LegendShadow->None,
LegendPosition->{0.3,-0.5},LegendSpacing->-0,LegendSize->0.5]
cependant, permettez-moi également de noter mon aversion de ce paquet, principalement parce qu'il est extrêmement contre-intuitif, chargé avec trop d'options et ne fournit pas une expérience propre directement hors de la boîte comme la plupart des fonctions de Mathematica. Vous aurez quelques bricolages autour de faire avec les options pour obtenir ce que vous voulez. Cependant, dans les graphiques et les graphiques où vous voulez une légende, cela peut être pratique. Voir aussi les commentaires de cette réponse et cette question .