4
$\begingroup$

I need to change the label style on a 3D plot like this one below :

ParametricPlot3D[{Sin[4 t], Cos[4 t] + 1, t}, {t, -10, 10}, 
    PlotRange -> {{-2, 2}, {0, 2}, {-2, 2}},
    AspectRatio -> 1,
    Boxed -> True,
    Axes -> True,
    AxesOrigin -> {0, 0, 0},
    AxesStyle -> GrayLevel[0.6],
    AxesLabel -> {"t", "a", Dot["a"]},
    LabelStyle -> Directive[FontFamily -> "Times", Medium],
    SphericalRegion -> True,
    Method -> {"RotationControl" -> "Globe"},
    ImageSize -> {512, 512}
]

I don't want to change the ticks themselves and the numbers below them, only the labels (symbols) of each axes. Currently, the labels are much too small and are on a wrong position (not clearly visible). How can I displace them to the extremity of their axe, and make them bigger ?

This is certainly very standard and easy to do, so I searched the documentation but didn't found a clear and complete example yet.

$\endgroup$
2
$\begingroup$

One way to do this is to combine your ParametricPlot with Text using Show

You can precisely specify the location of your axes labels

Show[
    ParametricPlot3D[{Sin[4 t], Cos[4 t] + 1, t}, {t, -10, 10}],

    Graphics3D@{
        Text[Style["t", Bold, Large, Red, FontFamily -> "Times"], {0, 2, 0}],
        Text[Style["a", Bold, Large, Blue, FontFamily -> "Times"], {-2, 0, 0}],
        Text[Style[OverDot["a"], Bold, Large, Purple, FontFamily -> "Times"], {0, 0, 2}]},



    PlotRange -> {{-2, 2}, {0, 2}, {-2, 2}}, AspectRatio -> 1, 
    Boxed -> True, Axes -> True, AxesOrigin -> {0, 0, 0}
]

enter image description here

$\endgroup$
  • $\begingroup$ It appears to work great, thanks. But I'm surprised there aren't some "simple" default commands to do this. $\endgroup$ – Cham Aug 28 '16 at 17:51
  • $\begingroup$ . @Cham It is surprising. Usually including the option AxesLabel -> {Style["x", Bold, Large, Green], Style["y", Bold, Large, Red], Style["z", Blue, Large, Red]} in the ParametricPlot3D works but I could not get it to place the labels at the ends of the Axes $\endgroup$ – Conor Cosnett Aug 28 '16 at 17:56
  • $\begingroup$ maybe you would like OverDot[ "a" ] @Cham $\endgroup$ – Conor Cosnett Aug 28 '16 at 17:58
  • 1
    $\begingroup$ Yep, thanks, I already fixed this one. I'll mark your answer as the right one in a day or two, in case someone else find something nicer (I doubt it !). $\endgroup$ – Cham Aug 28 '16 at 18:06
  • $\begingroup$ Cheers! I would also be interested if someone could find a better way. $\endgroup$ – Conor Cosnett Aug 28 '16 at 18:09

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