2012-05-03 62 views
1

我有一個我打印的256x256陣列。它總是一個單一的數字範圍爲-10〜50。所以例如,輸出文件看起來像:如何顯示256x256網格?

5 -10 5 4
1 50 -2 4
-10 49 -1 0

但在256x256的規模。我怎樣才能得到這些值的圖表? (它應該是一個高度圖)。

我通過GNUPLOT文檔看了,但沒有發現任何東西,可以幫助我:/我有一個graph.gp文件看起來像這樣:

set autoscale 
set xrange [0:256] 
set yrange [0:256] 
set pm3d 
cd 'src' 
splot "output.dat" 

然後我在終端打開「gnusplot」和寫load "graph.gp",但它甚至不想加載.dat文件,更不用說給我一個圖。謝謝你的幫助!

回答

1

我更喜歡使用matplotlib(python)來製作我的數字。要使用matplotlib執行此操作,可以使用matshow。下面是一個簡單的腳本,你可以運行:

#!/usr/bin/env python 

from matplotlib.pylab import * 

data = loadtxt("mydata.dat"); 

matshow(data) 

colorbar() 

# leaves figure on screen 
# comment out when saving file 
show() 

# uncomment to save file 
#savefig('myplot.pdf') 

產生一個陰謀,看起來像(請注意,我只是用隨機數據):

matshow

功能loadtxt將在您的數據文件自動以您擁有的格式(整數,空格分隔,每行按其自己的行)。

1

嘗試使用matrix關鍵字:

set pm3d map 
splot 'output.dat' matrix 

你不應該擔心設置的限制很多;他們應該自動從0到256。然後,如果您想玩色彩地圖,請參閱here舉例。