title: Custom Scaling on y-axis in matlab
body: <p>I come across a strange scaling in y- axis in a IEEE journal paper. </p>
  
  <p>From top to bottom </p>
  
  <p>y_axis = [0.9999   0.9995 0.999   0.995 0.99 0.98   0.95   0.9 0.8 0.7 0.5 0.3 0.2 0.1 0.05 0.02  0.01  0.005   0.001 0.0005   0.0001]. </p>
  
  <p>The scaling is not logaritmic. The space between the ticks are not equal. Definitely, it is not linear. You can see the big numbers (0.9... 0.999) and very small numbers(0.0001... 0.1) in detail in only one y-axis. I don't know how to do in MATLAB. I googled it, but i could not find. Can anyone help me? Thanks in advance.</p>
  
  <p>The figure is the following code:</p>
  
  <pre><code>clear all
  close all
  set(0,'defaulttextinterpreter','latex')
  P_tb = 1e-2;
  Ntrial = 1e7;                  % # of Monte Carlo trials
  jey=sqrt(-1);
  omega_db = -15;                % sidelobe gain of main antenna
  omega = db2pow(omega_db);      % omega in linear scale 
  F_db = [-5 -2 0 2 5];
  JNR_db = -5:20;
  beta_db = 2;
  F_lin = 10.^(0.1*F_db);
  JNR = 10.^(0.1*JNR_db);
  beta = 10.^(0.1*beta_db);
  temp = cell (length(F_db),1);
  P_b = zeros (length(JNR_db), length(F_db));
  for ii = 1:length(F_db)
      SNR = JNR;
      x = sqrt(omega);
      F = F_lin(ii);
      P_b(:,ii) = 1 - 1./(F+1).*(1-marcumq(x.*sqrt(2.*SNR./(F+1)),sqrt(2.*SNR.*F./(F+1))))-F./(F+1).*marcumq(sqrt(2.*SNR.*F./(F+1)), x.*sqrt(2.*SNR./(F+1)));
      temp (ii) = {['$F=$' num2str(F_db(ii)) ' dB']};
  end
  figure,
  h = plot(JNR_db, (P_b));
  set(gca,'YTick',fliplr([0.9999 0.9995 0.999 0.995 0.99 0.98 0.95 0.9 0.8 0.7 0.5 0.3 0.2 0.1 0.05 0.02 0.01 0.005 0.001 0.0005 0.0001]))
  set(gca,'YTickLabel',num2cell(fliplr([0.9999 0.9995 0.999 0.995 0.99 0.98 0.95 0.9 0.8 0.7 0.5 0.3 0.2 0.1 0.05 0.02 0.01 0.005 0.001 0.0005 0.0001])));
   grid on
  </code></pre>