我正在尝试制作一个带有两个相应y轴的图表。我想要的是,在左边的y轴上以一个单位(例如米)显示值,在右边的y轴上以另一个单位(例如英寸)显示对应的值。
在这种情况下,我已经成功地用米和英寸做到了这一点。
然而,当转换不像简单的乘法那样明显时,事情并不如此简单。在我的情况下,我正在尝试绘制通量和星等。从通量到星等的公式是:23.9-log(通量)。
当我绘制米和英寸时有效的方法现在不再起作用。以下是我的代码:
在这种情况下,我已经成功地用米和英寸做到了这一点。
然而,当转换不像简单的乘法那样明显时,事情并不如此简单。在我的情况下,我正在尝试绘制通量和星等。从通量到星等的公式是:23.9-log(通量)。
当我绘制米和英寸时有效的方法现在不再起作用。以下是我的代码:
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)
如果这个方法有效,那么两个图应该重叠在一起,但是实际上它们没有(而且我曾经在将类似的内容从米转换为英寸时使其工作)。我猜测这与对数有关,但是当将比例尺设置为对数时,情况变得更糟。