如何更改 Mathematica 等高线图中的等高线和图例?
How to change the contours and legend in mathematica contour plot?
Mathematica 中的 ContourPlot 函数会自动为您提供图例和等高线图,其中颜色均匀分布(例如,蓝色从 0.1 到 0.2 函数值,绿色从 0.2 到 0.3 等等)在我的例子中,我绘制的函数在 0.1 到 0.2 之间有大量的值,而在 0.2 到 1 之间只有很少的值。如果我想区分从 0.1 到 0.2 的更好的值并使这部分有几种颜色,并用一种颜色使值从 0.2 到 1,我应该怎么做?
我会使用 Mathematica 函数 Hue[z]
为轮廓分配颜色。为此,您将使用选项 ColorFunction
,如下所示:
ContourPlot[myFunction, {x,-10,10}, {y,-10,10}, ColorFunction -> Function[{f},Hue[g[f]]]]
在此代码中,g[f]
是将轮廓级别映射到色调(1 到 255 之间的值)的函数。你说你想要 0 到 0.2 之间的许多值,而只有 0.2 到 1 之间的几个值,所以我会使用类似
g[f_] := 100*(5*f)^(1/4)
显然你可以改变它以适应。如果这没有帮助,您可能需要使用选项 Contours->n
增加等高线的数量,其中 n 是您想要的数量。希望这对您有所帮助!
Mathematica 中的 ContourPlot 函数会自动为您提供图例和等高线图,其中颜色均匀分布(例如,蓝色从 0.1 到 0.2 函数值,绿色从 0.2 到 0.3 等等)在我的例子中,我绘制的函数在 0.1 到 0.2 之间有大量的值,而在 0.2 到 1 之间只有很少的值。如果我想区分从 0.1 到 0.2 的更好的值并使这部分有几种颜色,并用一种颜色使值从 0.2 到 1,我应该怎么做?
我会使用 Mathematica 函数 Hue[z]
为轮廓分配颜色。为此,您将使用选项 ColorFunction
,如下所示:
ContourPlot[myFunction, {x,-10,10}, {y,-10,10}, ColorFunction -> Function[{f},Hue[g[f]]]]
在此代码中,g[f]
是将轮廓级别映射到色调(1 到 255 之间的值)的函数。你说你想要 0 到 0.2 之间的许多值,而只有 0.2 到 1 之间的几个值,所以我会使用类似
g[f_] := 100*(5*f)^(1/4)
显然你可以改变它以适应。如果这没有帮助,您可能需要使用选项 Contours->n
增加等高线的数量,其中 n 是您想要的数量。希望这对您有所帮助!