Предположим, я пишу функции черного ящика, которые численно оценивают дорогостоящую комплексную функцию, а затем возвращают действительную и мнимую части.
fun[x_?InexactNumberQ] := Module[{f = Sin[x]}, {Re[f], Im[f]}]
Затем я могу использовать ее в графике как обычно, но в графикене распознает, что функция возвращает пару, и окрашивает обе кривые в один и тот же цвет.Как сказать Mathematica, что указанная функция всегда возвращает вектор фиксированной длины?Или как стилизовать этот сюжет?

РЕДАКТИРОВАТЬ: Учитывая попытки попытаться ответить на проблему, я думаю, что избежать двойной переоценки возможно только если стильвыполняется как последующая обработка полученной графики.Скорее всего, следующее не является надежным, но, похоже, работает для моего примера:
gr = Plot[fun[x + I], {x, -1, 1}, ImageSize -> 250];
k = 1;
{gr, gr /. {el_Line :> {ColorData[1][k++], el}}}
