Colors 在Mathematica中用不同的颜色给特定点着色
Mathematica命令的输出Colors 在Mathematica中用不同的颜色给特定点着色,colors,wolfram-mathematica,Colors,Wolfram Mathematica,Mathematica命令的输出 ListPointPlot3D[ Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}], PlotStyle -> PointSize[0.02]] 下面是一幅图 我想用红色给点(0,0)和(1,2)上色。如何为此修改上述命令 一个非常简单直接的方法是: list = Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}]; pts
ListPointPlot3D[
Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}],
PlotStyle -> PointSize[0.02]]
下面是一幅图
我想用红色给点(0,0)和(1,2)上色。如何为此修改上述命令 一个非常简单直接的方法是:
list = Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}];
pts = {{0, 0, 0}, {1, 2, 0}};
ListPointPlot3D[{Complement[list, pts], pts},
PlotStyle -> PointSize[0.02]]
当然,我没有明确指定颜色,因为下一个默认颜色是红色。但是,如果您想指定自己的,可以对其进行更多修改,如下所示:
ListPointPlot3D[{Complement[list, pts], pts},
PlotStyle -> {{Green, #}, {Blue, #}} &@PointSize[0.02]]
尤达展示了一种很好的方法。但是,有时直接使用图形原语更容易。这里有一个例子,不过在这个例子中,我会选择尤达的方法
Graphics3D[{
PointSize[0.02],
Point /@ Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}] /.
x : _@{1, 2, 0} | _@{0, 0, 0} :> Style[x, Red]
}]
可以使用
ColorFunction
选项来ListPointPlot3D
:
color[0, 0, _] = Red;
color[1, 2, _] = Red;
color[_, _, _] = Blue;
ListPointPlot3D[
Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}],
PlotStyle -> PointSize[0.02],
ColorFunction -> color, ColorFunctionScaling -> False]
包含ColorFunctionScaling->False
选项非常重要,因为否则传递给颜色函数的x、y和z坐标将标准化为0到1的范围
ColorFunction
还允许我们使用任意计算定义点着色,例如:
color2[x_, y_, _] /; x^2 + y^2 <= 9 = Red;
color2[x_, y_, _] /; Abs[x] == Abs[y] = Green;
color2[_, _, _] = Blue;
ListPointPlot3D[
Join @@ Table[{x, y, 0}, {x, -6, 6, 1}, {y, -6, 6, 1}],
PlotStyle -> PointSize[0.02],
ColorFunction -> color2, ColorFunctionScaling -> False]
color2[x_u,y_u,u]/;x^2+y^2点大小[0.02],
ColorFunction->color2,ColorFunctionScaling->False]
有趣的方法。我喜欢+1.