小编Rhy*_*ysy的帖子

使用matplotlib指定轮廓的RGB颜色

好吧,我认为这可能很简单,但我已经广泛搜索,找不到任何东西.我想要做的是指定使用matplotlib生成的轮廓线的精确RGB颜色值.我知道,如果我这样做:

plt.contour(X,Y,Z,[0.1,0.2,0.3],colors='k')
Run Code Online (Sandbox Code Playgroud)

然后我会得到三个等高于黑色的轮廓等级,或者如果我用'w'代替'k'那么轮廓都是白色的.那很好,但我需要做的是这样的事情:

plt.contour(X,Y,Z,[0.1,0.2,0.3],colors=(1.0,0.25,0.75)
Run Code Online (Sandbox Code Playgroud)

颜色未从某些内置预设中选择但具有由我精确定义的RGB(或RGBA)值.

有任何想法吗 ?

colors matplotlib contour

5
推荐指数
1
解决办法
1万
查看次数

使用 astropy 从旧数据写入新的 FITS 文件

我对 FITS 文件执行了一个非常简单的操作(数据是 numpy 数组格式),但我无法将其保存为新文件或覆盖现有文件。

我正在重写一些使用 numpy pyfits 模块处理天文 FITS 文件的旧代码 - 我想更新它以使用 astropy.io fits 模块。具体来说,我使用的一些数据是 3D 的,有些是 4D 的。4D 的东西只是一个约定 - 第 4 轴不包含有用的信息(可以在此处找到数据示例:http : //www.mpia.de/THINGS/Data_files/NGC_628_NA_CUBE_THINGS.FITS)。所以我更喜欢删除额外的轴,然后我的其余代码可以在没有任何特殊要求的情况下继续进行。

这是我使用的基于 pyfits 的旧代码,效果很好:

import numpy
import pyfits

filename = 'NGC628.fits'
outfile  = 'NGC628_reshaped.fits'

# Get the shape of the file
fitsfile=pyfits.open(filename)
image = fitsfile[0].data
header =fitsfile[0].header
z = image.shape[1]  # No. channels                  
y = image.shape[2]  # No. x pixels
x = image.shape[3]  # No. y pixels

newimage = numpy.reshape(image,[z,y,x])

pyfits.core.writeto(outfile,newimage,header, clobber=True) …
Run Code Online (Sandbox Code Playgroud)

numpy python-3.x pyfits astropy

1
推荐指数
1
解决办法
2570
查看次数

标签 统计

astropy ×1

colors ×1

contour ×1

matplotlib ×1

numpy ×1

pyfits ×1

python-3.x ×1