0

我想将解区域绘制为线性方程组,但我希望能够一次绘制一个方程(然后“分层”它们)而不是一次绘制所有方程。我无法弄清楚如何使用 Manipulate 函数来做到这一点。我使用 CheckboxBar 吗?这是我到目前为止所拥有的:

points1 := Table[{i - 1, j - 1}, {i, 70}, {j, 70}]
Show[ListPlot[points1, PlotRange -> {{0, 70}, {0, 70}}, ImageSize -> 850,
AxesLabel -> {"Racing Cars", "Sport-Utility Cars"}, PlotStyle -> 
Directive[RGBColor[0.45, 0.67, 0.82, 0.82], PointSize[0.005]], LabelStyle ->
Medium],
RegionPlot[{R <= 40, S <= 60, R + S >= 70}, {R, 0, 70}, {S, 0, 70}, 
PlotLegends -> "Expressions"]]

想要的是一次只能绘制一个方程。例如,

Manipulate[Plot[function[frequency*x + phase], {x, -6.6, 6.6}], {frequency, 1, 5}, 
{phase, 1, 10}, {function, {Sin, Cos, Tan}}]

(对不起,这里的新手......我保证我确实做了彻底的谷歌搜索,但我发现的例子都没有帮助我的情况。)

非常感谢!

4

1 回答 1

0

您在帖子中的评论有语法错误。RegionPlot需要在两个变量处定义。

Manipulate[
 Show[
  RegionPlot[R <= 40, {R, 0, 70}, {S, 0, 70}, PlotStyle -> {Opacity[plot1], Orange}],
  RegionPlot[S <= 60, {R, 0, 70}, {S, 0, 70}, PlotStyle -> {Opacity[plot2], Blue}], 
  RegionPlot[R + S >= 70, {R, 0, 70}, {S, 0, 70}, PlotStyle -> {Opacity[plot3], Brown}]
  ],
 {{plot1, 0, "R <= 40"}, {0, .5}, Checkbox},
 {{plot2, 0, "S <= 60"}, {0, .5}, Checkbox},
 {{plot3, 0, "R + S >= 70"}, {0, .5}, Checkbox},
 ControlPlacement -> Left]

在此处输入图像描述

希望这可以帮助。

于 2015-11-30T23:38:25.700 回答