2013-06-25 295 views
0

我在Mathematica 9.0中繪製圖形並將所有顏色轉換爲CMYK。之後,我使用繪圖工具面板添加了文字和其他信息。我希望這些東西也可以使用CMYK顏色,但是無法找到改變它的方法。我現在正在使用演示版本來查看這是否適用於我們的出版物。Mathematica中繪圖工具的CMYK顏色

感謝

[後來] 謝謝,這有助於。我正在爲我們的辦公室製作一個「假證明」模板,但是當我輸出爲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

如果它有幫助,這裏是如何得到您的CMYK顏色的RGB等價物。

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} *) 

我中有你需要手動鍵入他們入畫圖工具對話框的感覺。

當然,您可以隨時使用圖形主體而不是GUI工具進行標註,然後完全控制。

編輯/只是弄亂了這個。除了字體外,我可以很好地將繪圖工具對象的顏色與CMYK主體相匹配。字體顏色可以顯然可以通過字體對話框或繪圖工具對話框設置,但是對我來說都沒有任何意義。 我認爲我們可以將GUI繪圖工具標記爲還沒有準備好進行高質量的工作

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