Ope*_*way 25 python grid plot pixel matplotlib
我从一些计算中得到了以下数据:
x, y, temp
Run Code Online (Sandbox Code Playgroud)
其中x和y是尺寸为10x10的2D框中点的坐标.间距等于0.1.所以有10000个不同的点,结果文件如下:
0.0 0.0 5.6
0.1 0.0 3.2
0.2 0.0 4.1
...
9.9 9.9 2.1
Run Code Online (Sandbox Code Playgroud)
我想准备一个带有matplotlib的2D绘图,其中100x100像素,其中每个像素获得一种颜色(彩虹颜色从红色到紫色,从第三列的最小值到最大值)根据第3列,从该文件中读取数据.我想知道matplotlib最好的方法是什么
Joe*_*ton 31
基于它看起来像你的x,y,temp三元组的排序方式(在行中列出),你可以重塑"temp"列.
例如
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
x,y,temp = np.loadtxt('data.txt').T #Transposed for easier unpacking
nrows, ncols = 100, 100
grid = temp.reshape((nrows, ncols))
plt.imshow(grid, extent=(x.min(), x.max(), y.max(), y.min()),
interpolation='nearest', cmap=cm.gist_rainbow)
plt.show()
Run Code Online (Sandbox Code Playgroud)
编辑:你可能真的想要hsv
是你指的"彩虹"色彩图.matplotlib.cm.gist_rainbow
.matplotlib.cm.hsv
在底部回到红色.请参阅此处:https://matplotlib.org/users/colormaps.html以获取色彩映射列表.
如果您的x,y,temp三元组实际上没有订购,那么您需要重新计算您的积分.我在回答你上一个问题时给出了一个例子.
归档时间: |
|
查看次数: |
64997 次 |
最近记录: |