Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

# plot question

876 views

### dimitris

Jan 15, 2007, 4:58:22 AM1/15/07
to
Hello!

Consider the following graph of the function -ln(|x|).

Plot[-Log[Abs[x]], {x, -2, 2}, PlotRange -> {Automatic, {-1, 3.5}},
Axes -> False, Frame -> True, PlotPoints -> 100, FrameLabel -> {"x",
"y"}]

How is it possible to make the y-axis point downwards (I need this
because in half-space problems within the solid mechanics the possitive
vertical axis is pointed into the half-space)?

Dimitris

### Jean-Marc Gulliet

Jan 16, 2007, 1:58:32 AM1/16/07
to

Hi Dimitris,

You will find detail explanations from Bob Hanlon and David Park on the
following threads "help - how to invert the x or y axis.." at

In your case, the following should work (note that I have also adjusted
the plot range accordingly):

In[1]:=
Plot[Log[Abs[x]], {x, -2, 2},
PlotRange -> {Automatic, {1, -3.5}},

Axes -> False,
Frame -> True,
PlotPoints -> 100,

FrameLabel -> {"x", "y"},
FrameTicks -> {Automatic, Table[{i, -i}, {i, -4, 1}], None,
None}];

Regards,
Jean-Marc

### Bob Hanlon

Jan 16, 2007, 1:59:36 AM1/16/07
to
p1=Plot[-Log[Abs[x]],{x,-2,2},
PlotRange->{Automatic,{-1,3.5}},Frame->True,
PlotPoints->100,DisplayFunction->Identity];

Show[p1/.{x_,y_}->{x,-y},
PlotRange->{Automatic,{1,-3.5}},
Axes->False,Frame->True,
FrameLabel->{"x","y"},
FrameTicks->{Automatic,
AbsoluteOptions[p1,FrameTicks][[1,2,2]]/.{y_?NumericQ,r___}->{-y,r},
Automatic,Automatic},
DisplayFunction->\$DisplayFunction];

Bob Hanlon

### Peter Pein

Jan 16, 2007, 2:01:39 AM1/16/07
to
dimitris schrieb:

Hi Dimitris,

unfortunately I've just found this complicated FrameTicks option:
(Note, that -f[x] has to be plotted)

Block[{lbl},
Plot[Log[Abs[x]], {x, -2, 2}, PlotRange -> {Automatic, {-3.5, 1}},
Axes -> False, Frame -> True, PlotPoints -> 100, FrameLabel -> {"x", "y"},
FrameTicks -> {Automatic,
lbl = Flatten[{#1,
If[IntegerQ[#1], {ToString[-#1], {3/400, 0}}, {"", {3/800, 0}}]}, 1]&
/@ (Range[-15, 5] / 5), None, lbl /. _String -> ""}]]

But I'm sure, David Park will find an elegant solution :-)

Peter

### dimitris

Jan 16, 2007, 2:08:53 AM1/16/07
to
Thanks to Peter, Bob and Jean Marc for their replies.
Also thank to Jean-Marc for bringing in my attention the following

Regards
Dimitris

### Bill Rowe

Jan 16, 2007, 2:19:07 AM1/16/07
to
On 1/15/07 at 5:35 AM, dimm...@yahoo.com (dimitris) wrote:

>Consider the following graph of the function -ln(|x|).

>Plot[-Log[Abs[x]], {x, -2, 2}, PlotRange -> {Automatic, {-1, 3.5}},
>Axes -> False, Frame -> True, PlotPoints -> 100, FrameLabel -> {"x",
>"y"}]

>How is it possible to make the y-axis point downwards (I need this
>because in half-space problems within the solid mechanics the
>possitive vertical axis is pointed into the half-space)?

I am not sure I understand what you mean by "make the y-axis
point downwards". I am guessing you want the increasingly
positive tick values to appear toward the bottom of the page. If
I have this right perhaps you will find the following satisfactory

Plot[-Log[Abs[x]], {x, -2, 2}, PlotRange -> {Automatic, {-1,
3.5}}, Axes -> False, Frame -> True, PlotPoints -> 100,
FrameLabel -> {"x",

"y"}, FrameTicks -> {Automatic, Transpose[{
Range[0, 3], Range[3, 0, -1]}], {}, {}}];
--
To reply via email subtract one hundred and four