【发布时间】:2014-06-20 10:30:47
【问题描述】:
我正在尝试用两个对应的 y 轴绘制一个图。我想要的是在左侧 y 轴(例如米)上有一个单位的值,在左侧 y 轴上有另一个单位(例如英寸)的相应值。 在这种情况下,我设法用米和英寸做到了这一点。
但是,当转换不像乘以一样明显时,事情就不会那么容易了。 就我而言,我正在尝试绘制通量和幅度。从通量到幅度的公式是: 23.9 - 对数(通量)。
当我绘制米和英寸时起作用的方法不再起作用了。 这是我的代码:
host = host_subplot(111)
host.set_xlim((0.1,5))
host.set_ylim((1.,50.))
par1 = host.twinx()
par1.set_ylim((23.899999999999999, 19.652574989159952)) # Converting the ylim from flux to mag
host.set_xlabel('Wavelength (Microns)')
host.set_ylabel('Flux density ($\mu$Jy)')
par1.set_ylabel("Magnitude ")
host.errorbar(x, flux, fmt='rx' , xerr=errx, yerr = errorFlux)
par1.errorbar(x, mag, fmt='bx', xerr=errx, yerr=errorMag)
如果这有效,则两个图应该重叠,但它们不会(同样,我在做类似从米到英寸的事情时做了这项工作)。我怀疑这与日志有关,但是在将比例设置为日志时,情况会更糟。
【问题讨论】:
-
实际上这是我在尝试执行此操作时偶然发现的,我将其用作我的代码的基础。不幸的是,这在我的情况下不起作用。
标签: python matplotlib