- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近才开始尝试使用 healpy,但我不知道如何制作子图来包含我的 map 。我有一个行星的热发射图作为时间的函数,我需要在几个时刻(比如 9 个不同的时间)及时查看它并叠加一些坐标,以检查我的行星是否以正确的方式旋转。
到目前为止,我可以做两件事。
我不确定这是否是一个非常简单的问题,但它一直让我发疯,我找不到任何可行的方法。
我会告诉你我的意思:
选项 1:
import healpy as hp
import matplolib.pyplot as plt
MAX = 10**(23)
MIN = 10**10
for i in range(9):
t = 4000+10*i
hp.visufunc.mollview(Fmap_wvpix[t,:],
title = "Map at t="+str(t), min = MIN, max=MAX))
hp.visufunc.projplot(d[t,np.where(np.abs(d[t,:,2]-SSP[t])<0.5),1 ],
d[t,np.where(np.abs(d[t,:,2]-SSP[t])<0.5),2],
'k*',markersize = 6)
hp.visufunc.projplot(d[t,np.where(np.abs(d[t,:,2]-(SOP[t]))<0.2),1 ],
d[t,np.where(np.abs(d[t,:,2]-(SOP[t]))<0.2),2],
'r*',markersize = 6)
这使得 9 个数字看起来非常像这样:
Flux map superimposed with some stars at time = t
但我需要很多,所以我想制作一个图像,其中包含 9 个看起来像图像的子图。
选项 2:
fig = plt.figure(figsize = (10,8))
for i in range(9):
t = 4000+10*i
hp.visufunc.mollview(Fmap_wvpix[t,:],
title = "Map at t="+str(t), min = MIN, max=MAX,
sub = int('33'+str(i+1)))
hp.visufunc.projplot(d[t,np.where(np.abs(d[t,:,2]-SSP[t])<0.5),1 ],
d[t,np.where(np.abs(d[t,:,2]-SSP[t])<0.5),2],
'k*',markersize = 6)
hp.visufunc.projplot(d[t,np.where(np.abs(d[t,:,2]-(SOP[t]))<0.2),1 ],
d[t,np.where(np.abs(d[t,:,2]-(SOP[t]))<0.2),2],
'r*',markersize = 6)
这给了我子图,但它在我所有的子图中绘制了所有的 projplot 星! (见下图)
我知道我需要一种方法来调用具有 time = t map 的轴并在适当的 map 上绘制 time = t 的星星,但到目前为止我尝试的一切都失败了。我主要尝试使用 projaxes,认为我可以定义一个 matplotlib 轴并在其上绘制星星,但它不起作用。有什么建议吗?
此外,我也想在我的 map 上画一些线,但我也不知道该怎么做。该文档说 projplot 但如果我不告诉它我想要一个标记,它就不会绘制任何东西。
PS:这段代码可能对你没用,因为如果你没有我的数组,它就无法工作。这是一个应该运行的更简单的版本:
import numpy as np
import healpy as hp
import matplotlib.pyplot as plt
NSIDE = 8
m = np.arange(hp.nside2npix(NSIDE))*1
MAX = 900
MIN = 0
fig = plt.figure(figsize = (10,8))
for i in range(9):
t = 4000+10*i
hp.visufunc.mollview(m+100*i, title = "Map at t="+str(t), min = MIN, max=MAX,
sub = int('33'+str(i+1)))
hp.visufunc.projplot(1.5,0+30*i, 'k*',markersize = 16)
所以这应该为每一帧给我一颗星,并且这颗星应该在移动。但它会在所有帧上绘制所有星星。
我能做什么?我不明白文档。
最佳答案
如果你想在 matplotlib
子图中有 healpy
图,可以采用以下方法。关键是使用 plt.axes()
选择事件子图并在 healpy
函数中使用 hold=True
关键字。
import healpy as hp
import numpy as np
import matplotlib.pyplot as plt
fig, (ax1, ax2) = plt.subplots(ncols=2)
plt.axes(ax1)
hp.mollview(np.random.random(hp.nside2npix(32)), hold=True)
plt.axes(ax2)
hp.mollview(np.arange(hp.nside2npix(32)), hold=True)
关于axes - Healpy 绘图 : How do i make a figure with subplots using the healpy. mollview 投影?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37844221/
我最近才开始尝试使用 healpy,但我不知道如何制作子图来包含我的 map 。我有一个行星的热发射图作为时间的函数,我需要在几个时刻(比如 9 个不同的时间)及时查看它并叠加一些坐标,以检查我的行星
我在 Healpy 文档中发现 healpy.anafast lmax 的默认值为 3*nside-1 制定这个标准有什么理由吗?它是 HEALPix 内的标准,还是 CMB 实验的标准,或者可能有物
我正在尝试使用 healpy 绘制 HEALPix 掩码,例如: import healpy as hp import matplotlib from pylab import
我有一个要绘制在healpix map 上的星系列表(我正在使用healpy来做)每个星系都有一个设定的通量,我需要以每个星系的通量守恒的方式绘制它们在 map 上。 这是我的代码: import n
我正在使用 healpy.synfast 创建 map ,但似乎 healpy 没有“iseed”函数(如此处:http://healpix.jpl.nasa.gov/html/facilitiesn
我有一个数据网格,其中行代表 theta (0, pi),列代表 phi (0, 2*pi),其中 f(theta,phi) 是该位置的暗物质密度。我想为此计算功率谱并决定使用 healpy。 我无法
我刚开始使用 Healpy 并注意到如果我使用 map 获取 alm's,然后使用这些 alm's 生成新 map ,我不会得到我开始使用的 map 。这是我正在查看的内容: import numpy
我正在学习healpy。具体来说,我对 map2alm 和 alm2map 感兴趣:我找到了 question其中提供了将功能“应用于双方”(作为答案)的示例。正如我们所看到的,在连续应用 map2a
我使用以下代码创建了放大图像: map = hp.read_map(filename) hp.cartview(map, title=t,lonra = [-50,50], latra = [-70,
在使用 healpy 时,我可以使用 在 Mollview 中绘制 Healpix map import healpy map = 'filename.fits' healpy.visufunc.mo
我正在使用 healpy.query_polygon 获取多边形内的 healpix 索引列表。根据文档: vertices: Vertex array containing the vertices
我有一个 HEALPix map ,我在使用 healpy 时已经阅读过,但是它是在银河坐标系中,我需要它在天体/赤道坐标系中。有人知道转换 map 的简单方法吗? 我曾尝试使用 healpy.Rot
当我尝试使用命令“pyp install healpy”安装 Healpy 时,这是错误消息: File "c:\python34\lib\distutils\msvc9compiler.py", l
我有一张 HEALPix 全天 map ,来自 AKARI Far Infrared Surveyor 数据库(公开发布)。我尝试使用 healpy 来“平滑” map ,但结果看起来很奇怪。有没有更
我是 ubuntu 的新手,在 lenovo t410 上使用 ubuntu 14.04 和 python-3.4 为了安装 Healpy,我遵循了以下步骤;我已经使用 安装了 pthon3-dev
我是 HEALPix 新手,对 Python 也相当陌生。我尝试使用healpy 将 HEALPix 索引转换为 RA,12 月。我知道我必须使用 pix2ang,但无法弄清楚如何将输出 theta,
我是一名优秀的程序员,十分优秀!