I am trying to plot a spectrum, with lower x axis = velocity, on the upper =
frequency

The relationship between them (doppler formula) is  
f = (1-v/c)*f_0 
where f is the resulting frequency, v the velocity, c the speed of light,
and f_0 the frequency at v=0, ie. the v_lsr.

I have tried to solve it by looking at  
http://matplotlib.sourceforge.net/examples/axes_grid/parasite_simple2.html
http://matplotlib.sourceforge.net/examples/axes_grid/parasite_simple2.html 
, where it is solved by 

pm_to_kms = 1./206265.*2300*3.085e18/3.15e7/1.e5
aux_trans = matplotlib.transforms.Affine2D().scale(pm_to_kms, 1.)
ax_pm = ax_kms.twin(aux_trans)
ax_pm.set_viewlim_mode("transform")

well, my problem is that it is not a simple scaling law, but a linear
function.

Anyone know how to solve this?

Magnus
-- 
View this message in context: 
http://old.nabble.com/Twiny-and-affine-transform-for-xlim-tp29032627p29032627.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to