更改Matplotlib中Colorbar的缩放比例/单位

2024-04-19 16:49:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在绘制几个适合的图片,旁边有一个彩色条。我主要使用appy来绘制图像,包括colorbar。据我所知,Aplpy确实使用/依赖matplotlib来实现它的打印机制,所以如果有一种方法可以在Aplpy或matplotlib中实现我想要的功能,我认为这应该是可行的。在

Jy是默认的天文单位。但是这些值都很小,最大值一般为0.01jy。当我显示一个颜色条时,勾号标签是以相应的单位表示的,并且有很多零,占用了太多的空间。在

有没有办法让colorbar的单位显示为mJy(Jy的千分之一)?在

例如,记号当前为:0.000、0.002、0.004、。。。 我希望它们是:0,2,4。。。在

解决方案可以是缩放FITS图像本身,或者以某种方式调整colorbar。不管怎样,我也不知道怎么做。。。在

提前谢谢。在


Tags: 方法图像功能matplotlib绘制图片单位机制
1条回答
网友
1楼 · 发布于 2024-04-19 16:49:54

我想有很多选择。其中之一是向colorbar提供FuncFormatter

func = lambda x,pos: "{:g}".format(x*1000)
fmt = matplotlib.ticker.FuncFormatter(func)

plt.colorbar(..., format=fmt)

现在我不知道appy返回了什么,而且这个问题没有显示任何代码,因此我无法为特定情况提供有效的解决方案。在

相关问题 更多 >