我在Mathematica 9.0中绘制图形并将所有颜色转换为CMYK。之后,我使用“绘图工具”面板添加了文本和其他信息。我希望这些东西也是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 :(得分: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 primatives 匹配,除了字体。通过字体对话框或绘图工具对话框可以明显设置字体颜色,但对我来说也没有任何意义。 我认为我们可以将GUI绘图工具标记为尚未准备好进行高质量的工作。
答案 1 :(得分: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]
但是我已经有一段时间了,因为我不得不与CMYK合作,所以我可能不知道自己在做什么......:)