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