Подтвердить что ты не робот

Каковы стандартные цвета для графиков в Mathematica?

( Примечание:. Все ответы на этот вопрос действительны для версий Mathematica до версии 10. Для версий 10 и выше см. https://mathematica.stackexchange.com/info/54486/how-to-access-new-colour-schemes-in-version-10 и https://mathematica.stackexchange.com/info/54629/what-are-the-standard-colors-for-plots-in-mathematica-10.)

При использовании команды График или ListPlot в Mathematica выбираются определенные цвета по умолчанию.

Из-за единообразия в каком-то отчете я хотел бы использовать их вместе с опцией PlotStyle. Оказалось, что я не могу воспроизвести цвета по умолчанию с предопределенные имена цветов, хотя синий и фиолетовый, похоже, как-то близко.

Отсюда мой вопрос:

Как я могу выбрать стандартные цвета, используемые Mathematica на участках вместе с PlotStyle?

Спасибо заранее.

Хорошие ответы были предоставлены belisarius и Sjoerd из которого можно заключить, что

Сюжет [Sin [x], {x, 0, 2 Pi}, PlotStyle → ColorData [1, 4]]

приведет к синусоиде, нанесенному в четвертом стандартном цвете, немного приятному зеленому.

4b9b3361

Ответ 1

Цвета, используемые сюжетом, находятся в ColorData[1].

Сравнить

Graphics[MapIndexed[{#1, 
    Tooltip[Rectangle[{#2[[1]], 0}, {#2[[1]] + 1, 1}], #1]} &, 
  ColorData[1] /@ Range[40]]]

enter image description here

с цветами Belisarius

Graphics[MapIndexed[{#1, 
    Tooltip[Rectangle[{#2[[1]], 0}, {#2[[1]] + 1, 1}], #1]} &, 
  Cases[ListPlot[Table[{i}, {i, 40}]], Hue[x__], Infinity]]]

enter image description here

Они одинаковы, кроме одного - это термины Hue, а остальные - в терминах или RGBColor

Ответ 2

Я знаю, что это очень поздно для игры, но выражение, используемое для генерации n -го цвета в ColorData[1]:

Hue[FractionalPart[0.67 + 2.0 (i - 1)/GoldenRatio], 0.6, 0.6]

Обновить. На основании комментария Alexey ниже вы можете найти это, используя:

ColorData[1] // InputForm

Ответ 3

Если вы выполните:

ListPlot[Table[{i}, {i, 10}]] // FullForm  

Вы получаете первые 10 оттенков.

Или это дает вам готовый список:

hues = Cases[ListPlot[Table[{i}, {i, 10}]], Hue[x__], Infinity]

{Hue[0.67, 0.6, 0.6],     Hue[0.906068, 0.6, 0.6], 
 Hue[0.142136, 0.6, 0.6], Hue[0.378204, 0.6, 0.6], 
 Hue[0.614272, 0.6, 0.6], Hue[0.85034, 0.6, 0.6], 
 Hue[0.0864079, 0.6, 0.6],Hue[0.322476, 0.6, 0.6], 
 Hue[0.558544, 0.6, 0.6], Hue[0.794612, 0.6, 0.6]}  

Пример использования:

SphericalPlot3D[\[Phi], {\[Theta], 0, Pi}, {\[Phi], 0, 3 Pi},
 Epilog -> 
  Table[Inset[Framed[Style["Spiral", 20],
        Background -> hues[[i]]],
             {i/15 + .1, i/15}], 
  {i, 10}]]  

enter image description here

Если вы предпочитаете цветовое пространство RGB, вы можете сделать:

rgbs= ColorConvert[#, "RGB"] & /@ hues

** Изменить ** Сравнение с формулой Эли:

mine = Cases[ListPlot[Table[{i}, {i, 10}]], Hue[x__], Infinity]
elis = Table[Hue[FractionalPart[0.67 + 2.0 (i-1)/GoldenRatio],0.6,0.6], {i,1,10}]
Chop[(mine- elis) /. Hue[x_, __] -> x]
(* -> {0, 0, 0, 0, 0, 0, 0, 0, 0, 0} *)

Великий, Эли!