DMUG-Archiv 2009

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: PlotRange und DataRange in ArrayPlot


ok. Aber ich kann die Logik nicht nachvollziehen. Im Help steht:

- PlotRange->{amin,amax} specifies that ai j between amin and amax should be shown.

- A setting DataRange->{{xmin,xmax},{ymin,ymax}} specifies that the centers of successive cells should be at equally spaced positions between xmin and xmax in the horizontal direction, and ymin and ymax in the vertical direction.

Ich möchte DataRange spezifizieren, damit ich die Grafik in einem weiteren Schritt mit anderen Grafiken zusammen zeigen kann (Im echten Problem will ich einen Rasterplot auf eine geographische Karte legen). Wenn ich PlotRange nicht spezifiziere, funktioniert alles bestens. Sobalid ich aber PlotRange angebe (um mit der Option ClippingStyle Bereiche des Rasters gesondert darzustellen, werden die Angaben in DataRange offensichtlich anders interpretiert.

Gruss,
Martin



On Jan 17, 2009, at 16:26, Udo und Susanne Krause wrote:

Hallo Martin,

PlotRange und DataRange in ArrayPlot vertragen sich offensichtlich nicht:

zm = Table[Random[], {i, 11}, {j, 12}];
ArrayPlot[zm, FrameTicks -> Automatic, DataRange -> {{0, 1}, {1, 2}}]
ArrayPlot[zm, FrameTicks -> Automatic, PlotRange ->{0.5,1}, DataRange -> {{0, 1}, {1, 2}}]

Weiss jemand warum? Dies scheint mir ein übler Bug zu sein.

Nein, das ist <junkOut|junkIn>. PlotRange bekommt bei einem 2D Array eine 2D Spezifikation, man betrachte in den gegebenen Bezeichnungen

In[10] := ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange -> {{0.5, 1}, {1.5, 2}}, DataRange -> {{0, 1}, {1, 2}}]

In[11]:= ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange -> {{0.5, 1}, Automatic}, DataRange -> {{0, 1}, {1, 2}}]

In[13]:= ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange ->{Automatic, {1,1.5}}, DataRange -> {{0, 1}, {1, 2}}]

In[10] := ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange -> {{0.5, 1}, {1.5, 2}}, DataRange -> {{0, 1}, {1, 2}}]

Wenn

In[14]:= ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange -> {Automatic, {0.5, 1.}}, DataRange -> {{0, 1}, {1, 2}}]

eingegeben wird, bleibt eine Kästchenreihe stehen, bei

In[15]:= ArrayPlot[zm, FrameTicks -> Automatic,
PlotRange -> {Automatic, {0.5, 1.}},
DataRange -> {{0, 1}, {1.1, 2.2}}]

bleibt keine Kästchenreihe stehen. Geometrisch ist das einsichtig, DataRange bestimmt den _Wertebereich_ (!) und PlotRange wählt aus diesem Wertebereich aus. In der Hilfe steht extra geschrieben: For ArrayPlot, the settings for DataRange refer to the coordinates of the centers of each cell.

Gruss
Udo.

--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/


----------------------------------------------------------------------------
Max-Planck-Institute for Biogeochemistry, PF 100164, D-07701 Jena, Germany
Street Address:  Beutenberg Campus, Hans-Knoell-Straße 10, D-07745 Jena
Office: +49-3641-57-6350/6301
Mobile No:      +49-151-12035946
Home:   +49-3641-618247
Fax.:   +49-3641-57-7300
Skype:   mheimann
Email:   martin.heimann@XXXXXXX.de,
              office.bgc-systems@XXXXXXX.de
Web:     http://www.bgc-jena.mpg.de/~martin.heimann
===========================
8th International Carbon Dioxide Conference:  http://www.icdc8.org


Antworten:
Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html