I have a plot of a function depending on two variables called l2 and l3. However, I would like to label the axes of the plot with $\lambda_2$ and $\lambda_3$. I tried

Plot3D[{(Bg*l2*l3), 0}, {l2, 0, 10}, {l3, 0, 10}, 
AxesLabel -> {HoldForm[Subscript[\[Lambda], 2]], 
HoldForm[Subscript[\[Lambda], 3]]}]

but it doesn't work, the label stays l2 and l3.

How can I get the correct labelling? Thank you for your help!


1 Answer 1


You have to use a list of three elements for the AxesLabel in Plot3D.

Plot3D[{(Bg*l2*l3), 0}, {l2, 0, 10}, {l3, 0, 10}, AxesLabel -> {Subscript[\[Lambda], 2], Subscript[\[Lambda], 3], Null}]

enter image description here

Please note that since the value of Bg is not given, the graph is obviously incorrect. And the HoldForm is not necessary here since there is nothing could be evaluated.

  • $\begingroup$ Do you perhaps also know how to label the ticks on the axes with 10^3 instead of 1000? $\endgroup$
    – Thomas
    Apr 30, 2015 at 9:53
  • $\begingroup$ Error: "A tick position in the value of the Ticks option should be a number." $\endgroup$
    – Thomas
    Apr 30, 2015 at 9:58
  • $\begingroup$ @LCF Sorry, I misread your question...Plot[0, {x, 0, 2 10^3}, Ticks -> {{{1000, HoldForm[10^3]}}, {-1, 1}}] this will work $\endgroup$
    – vapor
    Apr 30, 2015 at 10:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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