Как я могу пометить каждую из этих строк отдельно:
Plot[{{5 + 2 x}, {6 + x}}, {x, 0, 10}]
Как я могу пометить каждую из этих строк отдельно:
Plot[{{5 + 2 x}, {6 + x}}, {x, 0, 10}]
Там есть хороший код, который позволяет вам динамически делать это в ответе на Как комментировать несколько наборов данных в ListPlots.
Также существует команда LabelPlot
, определенная в Технической заметке Маркировка кривых на графиках
Конечно, если у вас слишком много изображений, чтобы сделать,
то нетрудно вручную добавить метки при использовании Epilog
, например
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}]]
Фактически вы можете сделать что-то подобное с Locators
, что позволяет перемещать метки везде, где вы хотите:
DynamicModule[{pos = Table[{1, fns[1][[i]]}, {i, len}]},
LocatorPane[Dynamic[pos], Plot[Evaluate[fns[x]], {x, 0, 10}],
Appearance -> Table[Framed[[email protected][fns[x][[i]]],
RoundingRadius -> 5, Background -> White], {i, len}]]]
В приведенном выше примере я сделал локаторы в форме меток, хотя также возможно сохранить Epilog
, как указано выше, и иметь невидимые локаторы, которые управляют позициями.
Локаторы также могут быть ограничены (используя 2-й аргумент Dynamic
) для соответствующих кривых... но это не обязательно.
В качестве примера приведенного выше кода с функциями с метками, перемещаемыми вручную:
fns[x_] := {Log[x], Exp[x], Sin[x], Cos[x]};
Mathematica 9 теперь предоставляет простые способы включения легенд.
Plot[{{5 + 2 x}, {6 + x}}, {x, 0, 10}, PlotLegends -> "Expressions"]
Вы можете вставлять легенды в свой сюжет, загружая пакет PlotLegends
<<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]
Однако позвольте мне также отметить мою нелюбовь к этому пакету, в первую очередь потому, что он чрезвычайно противоречит ожиданиям, загружен слишком большим количеством вариантов и не обеспечивает чистого опыта прямо из коробки, как и большинство функций Mathematica. У вас будет какое-то возиться, чтобы сделать выбор, чтобы получить то, что вы хотите. Однако на графиках и диаграммах, где вам нужна легенда, это может быть удобно. Также см. Комментарии к этому ответу и этот вопрос.