2013-06-25 4 views
0

Я рисую графики в Mathematica 9.0 и преобразовал все цвета в CMYK. Впоследствии я добавил текст и другую информацию с помощью палитры инструментов рисования. Я бы хотел, чтобы этот материал был в цвете CMYK, но не может найти способ его изменить. Я использую демо-версию прямо сейчас, чтобы узнать, будет ли это работать для наших публикаций.Цвет CMYK для инструментов рисования в Mathematica

Благодаря

[Позже] Спасибо, что это помогает. Я создаю шаблон «фиктивного доказательства» для нашего офиса, но мои стрелки-стрелки функции кажутся другим цветом, чем мои функции, когда я экспортирую в нечто вроде pdf. Я бы хотел, чтобы вручную управлять цветом стрелок, но, похоже, не может найти того, как это написано. Я также не возражал бы менять стиль стрелки только на две линии вместо твердой формы. Стрелки - последняя строка.

ClearAll["Global`*"]; 
Interpretation[{f = { 1/(x - 1) + 1, Sin[x], -x, x}, 
    points = {{3, 2}, {-5, -8}}, min = -10, max = 10, size = 0.5, 
    rmin = -10, rmax = 10, gridx = 1, gridy = 1, hlabel = "x", 
    vlabel = "y"}, 
Panel[Grid[{{Style["Plot Characteristics", Bold], SpanFromLeft}, 
    {"Functions:", InputField[Dynamic[f]]}, 
    {"Points:", InputField[Dynamic[points]]}, 
    {"Domain Min:", InputField[Dynamic[min]]}, 
    {"Domain Max:", InputField[Dynamic[max]]}, 
    {"Range Min:", InputField[Dynamic[rmin]]}, 
    {"Range Max:", InputField[Dynamic[rmax]]}, 
    {"Grid Size (cm):", InputField[Dynamic[size]]}, 
    {"Gridline Space x:", InputField[Dynamic[gridx]]}, 
    {"Grdiline Space y:", InputField[Dynamic[gridy]]}, 
    {"Horizontal Label:", InputField[Dynamic[hlabel]]}, 
    {"Vertical Label:", InputField[Dynamic[vlabel]]} 
    }]], 
Plot[f, {x, min - 0.58*gridx, max + 0.58*gridx}, 
    PlotRange -> {rmin - 1.01*gridy, rmax + 1.01 gridy} , 
    GridLines -> {Range[min, max, gridx], Range[rmin, rmax, gridy]}, 
    GridLinesStyle -> {{Dashed, CMYKColor[0, 0, 0, 1, 0.25], 
     AbsoluteThickness[0.5]}, {Dashed, CMYKColor[0, 0, 0, 1, 0.25], 
     AbsoluteThickness[0.5]}}, 
    Ticks -> {Range[min, max, gridx], Range[rmin, rmax, gridy]}, 
    TicksStyle -> 
    Directive[10, Opacity[0], FontOpacity -> 0.9999, 
    CMYKColor[0, 0, 0, 1], FontFamily -> "Helvetica"], 
    ImageSize -> {(max + gridx - (min - gridx))*28.52*size + 37.2 + 
     6.4*StringLength[hlabel], (rmax + gridy - (rmin - gridy))*28.52* 
     size + 49}, 
    AspectRatio -> Full, 
    AxesLabel -> {Style[hlabel, Italic], Style[vlabel, Italic]}, 
    LabelStyle -> {{FontFamily -> "Helvetica", FontSize -> 14}}, 
    AxesStyle -> {CMYKColor[1, 1, 1, 1], AbsoluteThickness[0.5]}, 
    PlotStyle -> {{AbsoluteThickness[1], 
     CMYKColor[0, 0, 0, 1]}, {AbsoluteThickness[1], 
     CMYKColor[0, 0.83, 1, 0]}, {AbsoluteThickness[1], 
     CMYKColor[1, 0, 0, 0]}, {AbsoluteThickness[1], 
     CMYKColor[0.36, 1, 0, 0]}, {AbsoluteThickness[1], 
     CMYKColor[0.63, 0, 1, 0]}, {AbsoluteThickness[1], 
     CMYKColor[0, 0, 0, 1]}}, 
    Prolog -> {Arrowheads[{0.02, 0.01, {0, 0.03}}], 
    Arrow[{{max + gridx, 0}, {max + gridx + gridx/10, 0}}], 
    Arrow[{{min - gridx, 0}, {min - gridx - gridx/10, 0}}], 
    Arrow[{{0, rmax + gridy}, {0, rmax + gridy + gridy/10}}], 
    Arrow[{{0, rmin - gridy}, {0, rmin - gridy - gridy/10}}], 
    AbsolutePointSize[5], Point[points]}, 
    Epilog -> {Text[ 
     Style["Label", 12, FontColor -> CMYKColor[0, 0, 0, 1], 
     FontFamily -> "Helvetica"], {5, 5}]} 
    ] 
    /. Line[x__] :> Sequence[Arrowheads[{-.02, .02}], Arrow[x]] 
] 
+0

Теперь это совсем другой вопрос ... :) Я рекомендую упростить вашу проблему до минимально возможного кода, который демонстрирует проблемы, а затем просить [http://mathematica.stackexchange.com ] (http://mathematica.stackexchange.com). Если ничего другого, вы можете ответить на некоторые вопросы! :) – cormullion

+0

Спасибо, я попробую. – user2520444

ответ

1

Если это поможет, вот как вы можете получить эквиваленты RGB ваших цветов CMYK.

ColorConvert[ CMYKColor[0, 1, 1, 0] , "RGB"] /. RGBColor -> List 

(* {1., 0., 0.} *) 

Или в подходящем диапазоне для диалогов:

255 (ColorConvert[ CMYKColor[.1, .8, .3, .15] , "RGB"] /. RGBColor -> List) // Round 

(* {195, 43, 152} *) 

У меня есть ощущение, что вы должны будете вручную ввести их в диалог инструментов рисования.

Конечно, вы всегда можете делать свою маркировку с использованием графических примитивов вместо инструментов графического интерфейса, тогда у вас есть полный контроль.

Редактировать // просто испортил это. Я могу красиво сопоставить цвета объектов инструмента рисования с примитивами CMYK кроме шрифтов. Цвет шрифта может , очевидно, быть установлен через диалог шрифта или диалог инструментов чертежа, но ни то, что имеет для меня никакого смысла. Я думаю, что мы можем наметить инструменты рисования графического интерфейса, так как не готов к высококачественной работе.

1

Я не думаю, что я был бы заинтересован в вашем подходе - во-первых, если вы сгенерируете график снова, разве вам не придется повторять аннотации? Затем вы делаете вещи вручную, которые вы, возможно, можете автоматизировать более легко (если у вас есть много работы такого типа ...). Хотя это займет некоторое время, чтобы научиться делать все через Mathematica.

Это, кажется, сохранить CMYK цвета при экспорте его:

p = Framed[ 
    Plot[ 
    Sin[x], 
    {x, 0, 2 Pi}, 
    PlotStyle -> CMYKColor[0, 1, 0, .15], 
    PlotRangePadding -> 0, 
    Prolog -> {CMYKColor[.1, .1, .3, .15], 
    Rectangle[{-1, -1}, {2 Pi, 1}]}, 
    Epilog -> {Text[ 
     Style["Sine of x", 28, 
     FontColor -> CMYKColor[.2, .5, 1, .15], 
     FontFamily -> "Optima Bold"], 
     {4.5, .5}]}], 
    Background -> CMYKColor[.3, .2, .0, .15], 
    FrameStyle -> CMYKColor[.1, .2, .0, 0] 
    ] 

Export["p.eps", p] 

plot

Но это было некоторое время, так как я должен был работать с CMYK, так что я не мог знать, что я делаю больше ... :)

+0

Спасибо, это помогает. Я делаю шаблон «фиктивного доказательства» для нашего офиса, и я думаю, что у меня все цвета вычислены, кроме моей функции стрелки. Когда я экспортирую это в нечто вроде PDF, они отличаются от функций. Вот что у меня есть. Кажется, я не могу изменить цвет стрелок так, как это написано. – user2520444