WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Colorbar in gewünschtem Bereich einstellen

 

matlabMAT
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.05.2009, 10:25     Titel: Colorbar in gewünschtem Bereich einstellen
  Antworten mit Zitat      
Ich habe das Problem, dass ich es nicht schaffe in der Colorbar den richtigen Wertebereich anzugeben.
Ich möchte, dass der Wertebereich von -30 bis -5 geht. Die Messwerte liegen auch alle in diesem Bereich, aber bei mir stellt er die Colorbar immer automatisch auf 0 bis 64.
Mit "caxis" oder "Clim" habe ich es nicht hinbekommen
Die Datei kann man sich auf dem FTP Server ftp.scp.byu.edu runterladen, unter data/qscatv2/2004/sir/qmsv/arc/175/a

hier der Quellcode


Code:

clear all;
%Programm " Auslesen von Sigma0 Werten und Koordinaten an Hand eingegeben
%Pixel Koordinaten


%Welche Sir- Datei soll bearbeitet werden

filein = 'qmsv-a-Arc04-175-176.sir';




%Einlesen der Datenwerte

[array_in head descrip iaopt]=loadsir(filein);


nsx=head(1);
nsy=head(2);
iopt=head(17);
xdeg=head(3);
ydeg=head(4);
ascale=head(6);
bscale=head(7);
a0=head(8);
b0=head(9);

%=======Pixel der Beobachtingspunkte markieren
for b = 1:6
   
 if b == 1
    alon = 23.86;
    alat = 79.83;
 elseif b == 2
    alon = 25.75;
    alat = 79.87;
 elseif b == 3
    alon = 23.59;
    alat = 79.63;
 elseif b == 4
    alon = 24.32;
    alat = 79.49;
  elseif b == 5
    alon = 22.85;
    alat = 79.71;
 elseif b == 6
    alon = 23.86;
    alat = 80.00;  
 end

if iopt == -1          % image only (can't transform!)
 x=ascale*(alon-a0)+1.0;
 y=bscale*(alat-b0)+1.0;
elseif iopt == 0               % rectalinear lat/long
 thelon=alon;
 thelat=alat;
 x=ascale*(thelon-a0)+1.0;
 y=bscale*(thelat-b0)+1.0;
elseif (iopt == 1) | (iopt == 2) % lambert
 [thelon thelat]=lambert1(alat,alon,ydeg,xdeg,iopt);
 x=(thelon-a0)*ascale+1.0;
 y=(thelat-b0)*bscale+1.0;
elseif iopt == 5             % polar stereographic
 [thelon thelat]=polster(alon,alat,xdeg,ydeg);
 x=(thelon-a0)/ascale+1.0;
 y=(thelat-b0)/bscale+1.0;
elseif (iopt == 11) | (iopt == 12) | (iopt == 13)  % EASE
 [thelon thelat]=easegrid(iopt,alat,alon,ascale);
 thelon=thelon+xdeg;
 thelat=thelat+ydeg;
 x=thelon+1.0-(xdeg+a0);
 y=thelat+1.0-(ydeg+b0);
else
  disp(['*** unknown SIR transformation']);
end;

% convert from matlab coordinates to SIR coordinates
y=nsy-y+1;  

%===============Rundungen auf Ganzzahlige Werte

if x-0.5-floor(x)>0
    X=ceil(x)
else X=floor(x)
end


if y-0.5-floor(y)>0
    Y=ceil(y)
else Y=floor(y)
end

% =============Suchen des passenden Sigma 0 Wertes
%ACHTUNG Y und X vertauscht nur groß buchstaben
Sig = array_in(Y,X);
array_in(Y,X) = 50;
end
%===============================Ausgabe der Werte


disp(['Lon ',num2str(alon),'   Lat ',num2str(alat), '   Pixel_x ',num2str(X), '   Pixel_y ',num2str(Y),'   Sigma0 ', num2str(Sig)]);




%Darstellen

if (exist('min1') == 1)
  small=min1;
  if (exist('max1') == 1)
    large=max1;
  else
    large=max(max(array_in));
  end;
else
  small=min(min(array_in));
  large=max(max(array_in));
end;

scale=large-small;
if scale == 0
  scale = 1;
end

scale=64/scale;


clf;
image((array_in-small)*scale);


XX = (array_in-small)*scale;

hold on;
x=[1949 2032 2032 1949];
y=[1675 1675 1755 1755];

% Rechteck Zwischen Punkten Plotten
YY=XX(min(y):max(y),min(x):max(x));
figure;
image(YY);

hold on;
axis('off');
colorbar('horiz');
colormap('hsv');
hold off;

 

_________________

hang loose
Private Nachricht senden Benutzer-Profile anzeigen


LittleX
Forum-Guru

Forum-Guru


Beiträge: 494
Anmeldedatum: 14.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.05.2009, 09:32     Titel:
  Antworten mit Zitat      
Hallo,

verwende anstelle von image den Befehl imagesc. Damit werden die Daten auf den gesamten Wertebereich der Colormap abgebildet.
Private Nachricht senden Benutzer-Profile anzeigen
 
matlabMAT
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.05.2009, 13:07     Titel:
  Antworten mit Zitat      
habs ausprobiert, aber es hat sich leider nichts verändert Sad
_________________

hang loose
Private Nachricht senden Benutzer-Profile anzeigen
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 22.05.2009, 14:12     Titel:
  Antworten mit Zitat      
Hallo matlabMAT,

probier mal imagesc und caxis

Code:
figure
imagesc(YY)
caxis([-30 5])
axis('off')
colorbar('horiz')
colormap('hsv')


Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
matlabMAT
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 21.05.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.05.2009, 16:02     Titel:
  Antworten mit Zitat      
cool, danke
jetzt stellt er mir die colorbar in den gewünschten Bereich ein, aber mit den Werten stimmt noch igendwas nicht, muss nochmal schauen worans liegt,
trotzdem vielen Dank

gruß Matze
_________________

hang loose
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.