Jas*_*oss 10 plot wolfram-mathematica colors points
ListLinePlot
做一些类似的东西,我可以得到彩色
ListLinePlot[Range[420, 680, 20], ColorFunction -> "VisibleSpectrum", ColorFunctionScaling -> False]
Run Code Online (Sandbox Code Playgroud)
但是,如帮助文件所示(" ColorFunction
至少需要一个数据集Joined
"),如果我做了相同的操作
ListPlot[Range[420, 680, 20], ColorFunction -> "VisibleSpectrum", ColorFunctionScaling -> False]
Run Code Online (Sandbox Code Playgroud)
我所有的观点都是蓝色的.有一个很好的方式来获得ColorFunction
,为工作ListPlot
与Joined -> False
?
也就是说,是否有更好的方式来获得类似的东西
ListPlot[
List /@ Transpose[{Range[(680 - 420)/20 + 1], Range[420, 680, 20]}],
PlotMarkers -> ({Graphics[{#, Disk[]}], 0.05} & /@ ColorData["VisibleSpectrum"] /@ Range[420, 680, 20])
]
Run Code Online (Sandbox Code Playgroud)
?
(另外,有没有人解释为什么 Mathematica需要Joined -> True
使用ColorFunction
?)
编辑:我也在寻找一种ErrorListPlot
在ErrorBarPlots
包装中进行类似着色的方法.
问题是,Joined-> True绘制了一个Line [],可以为每个包含点赋予VertexColors.我假设在设置Joined-> False时为这些点做同样的操作导致它不起作用的情况.尽管如此,Line []和Point []在您的情况下的工作方式基本相同.那是什么呢
ListLinePlot[Range[420, 680, 20], ColorFunction -> "VisibleSpectrum",
ColorFunctionScaling -> False] /. Line[arg___] :> Point[arg]
Run Code Online (Sandbox Code Playgroud)
顺便说一句,如果你只使用ListLinePlot,那里出现的唯一Line []指令是数据中的指令,即使你有更多的数据集和{x,y}坐标,这也应该有效
data = Transpose[Table[{{x, Sin[x]}, {x, Cos[x]}}, {x, 0, 2 Pi, 0.2}]];
ListLinePlot[data, ColorFunction -> Hue] /. Line[arg___] :> Point[arg]
Run Code Online (Sandbox Code Playgroud)