Re: Plotting: how does one reverse the time axis tick mark values?
- To: mathgroup at smc.vnet.net
- Subject: [mg127343] Re: Plotting: how does one reverse the time axis tick mark values?
- From: "E. Martín-Serrano" <eMartinSerrano at telefonica.net>
- Date: Thu, 19 Jul 2012 03:49:40 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
Something like this below will do the trick, producing forward and backward scales over any range and the corresponding ticks. I am forwarding James a picture with multiple bidirectional scales over multiple magnitudes on the same x-y axes. <<Presentations Draw2D[ {Blue, XTickLine[{0, 1, 1}, {-Rescale[2.5, {5, 0}], 0}, {-Rescale[2.5, {5, 0}], 0, .1}, 5, XNumberFunction -> (NumberForm[#, {4, 1}] &), XLabTickSpecs -> {0.015, 0, {AbsoluteThickness[2], Black}}, XUnLabTickSpecs -> {0.015, 0, {Gray}}, XTextSpecs -> {{0, 1}, {1, 0}, 0.01}], Purple, XTickLine[{0, 1, .8}, {Rescale[2.5, {5, 0}], 0}, {Rescale[2.5, {5, 0}], 0, -.1}, 5, XNumberFunction -> (NumberForm[#, {4, 1}] &), XLabTickSpecs -> {0.015, 0, {AbsoluteThickness[2], Black}}, XUnLabTickSpecs -> {0.015, 0, {Gray}}, XTextSpecs -> {{0, 1}, {1, 0}, 0.01}] }, PlotRange -> {{-.3, 1.2}, {-.5, 1.1}}, BaseStyle -> {FontSize -> 12}, Frame -> False, ImageSize -> 500] E. Martin-Serrano -----Mensaje original----- De: James Stein [mailto:james at stein.org] Enviado el: mi=E9rcoles, 18 de julio de 2012 7:37 Para: mathgroup at smc.vnet.net Asunto: Plotting: how does one reverse the time axis tick mark values? I thought this would be simple, but I am stumped: I wish to display values (on the y axis) for specific times (on the x-axis). Conventionally, time on charts progresses from left to right, and this is my desire. However, I want the ticks along the time axis to be measured in what one might call "countDown units" or "reverse units", for example "Myr before Present" or "Seconds before Midnight" or "Centuries B.C.". As a simple example, consider the result of ListPlot [ Transpose [ { Range [ 6 ] , Range [ 6 ] } ] ] which displays the values 2, 3, 4, 5, 6 along the x axis. My problem is how to construct this same chart, except with values 4, 3, 2, 1, 0 replacing 2, 3, 4, 5, 6. The various ways I tried to do this also mirror-reflect the plotted y-values. I looked for an option called something akin to 'TickMarkLabelFunction', but couldn't find one.