Mathematica中地块的标准颜色是什么?

时间:2011-03-22 13:14:05

标签: wolfram-mathematica plot

注意:此问题的所有答案均适用于版本10之前的Mathematica版本。对于版本10及更高版本,请参阅https://mathematica.stackexchange.com/questions/54486/how-to-access-new-colour-schemes-in-version-10https://mathematica.stackexchange.com/questions/54629/what-are-the-standard-colors-for-plots-in-mathematica-10。< / p>

Mathematica 中使用 Plot ListPlot 命令时,会选择某些默认颜色。

出于某些报告中统一性的原因,我想将它们与PlotStyle选项一起使用。事实证明,我无法使用pre-defined color names重现默认颜色,尽管蓝色和紫色似乎有点接近。

因此我的问题是:

  
    

如何选择Mathematica在绘图中使用的标准颜色以及PlotStyle?

  

提前谢谢。

答案很好belisariusSjoerd提供,我们可以从中得出结论

  
    

绘图[Sin [x],{x,0,2 Pi},PlotStyle - &gt; ColorData [1,4]]

  

将导致以第四种标准颜色绘制正弦,一些很好的绿色。

3 个答案:

答案 0 :(得分:19)

我知道游戏后期 ,但n生成 ColorData[1]颜色的表达式为:< / p>

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

更新根据以下Alexey的评论,您可以使用以下方式找到:

ColorData[1] // InputForm

答案 1 :(得分:16)

Plot使用的颜色位于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 :(得分:12)

如果你这样做:

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

**编辑**与Eli的公式比较:

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

太好了,Eli!