1
$\begingroup$

I am plotting the best response functions in a basic quantity setting Duopoly model using the ParametricPlot function. The issue is that the resulting graphs are both "black" even thought I have specified the PlotStyle -> {{Blue,Thick},{Red,Thick}}, and the AxisLabel -> {q1,q2} option is also not be working. Any ideas on what I might be doing wrong here?

BRq1[q2_, c1_, a_] := 1/2 (a - c1 - q2);
BRq2[q1_, c2_, a_] := 1/2 (a - c2 - q1);
Manipulate[
ParametricPlot[{{q2, BRq1[q2, c1, a]}, {BRq2[q1, c2, a], q1}}, {q1, 
0, 100}, {q2, 0, 100}, PlotStyle -> {{Blue, Thick}, {Red, Thick}}, 
PlotRange -> {{0, 100}, {0, 100}}, AxesLabel -> {q1, q2}, AspectRatio -> 1, 
PlotLabel -> Style["Best Response Curves", Blue, 20]], 
Style["Parameters", Bold, Medium], {c1, 0, 50}, {c2, 0, 100}, {a, 10,130}]
$\endgroup$
3
$\begingroup$

About Axis, for two parameters th default is Frame so use FrameLabels.

If there are two parameters then MMA expects some kind of surface, this causes confusion. What you see is not the "plot" but the boundary of this expected region. You can fix this with:

Mesh -> None, PlotStyle -> (EdgeForm /@ Directive @@@ {{Blue, Thick}, {Red, Thick}})

enter image description here

I'd go with one parameter:

Manipulate[
 ParametricPlot[{{q1, BRq1[q1, c1, a]}, {BRq2[q1, c2, a], q1}}, 
                {q1, 0, 100}, PlotStyle -> {{Blue, Thick}, {Red, Thick}}, 
                PlotRange -> {{0, 100}, {0, 100}}], 
 {c1, 0, 50}, {c2, 0, 100}, {a, 10, 130}]
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.