2016-07-08 47 views
1

我正在編寫Python代碼。我的數據集是由三列,杉杉兩個是座標,第三個是熱估計Python中的空間數據熱圖

    X    Y  heat 
0  497935.000000 179719.000000 0.048428 
1  497935.000000 179719.000000 0.029399 
2  497935.000000 179719.000000 0.066734 
3  497935.000000 179719.000000 0.065524 
4  497935.000000 179719.000000 0.062458 
5  497935.000000 179719.000000 0.032225 
6  497935.000000 179719.000000 0.028557 
7  497463.000000 179526.000000 0.000388 
8  497899.000000 179305.000000 0.000733 
9  497805.000000 179364.000000 0.000158 
10  498264.000000 180349.000000 0.000036 
11  498020.000000 179602.000000 0.003149 
...    ...   ...  ... 

我想在XY平面上繪製的數據,分配顏色的每個點與反映其熱值。像這樣的情節enter image description here

但是每一個點都有一個顏色取決於它的熱量,在Python中。 由於提前

+0

請說明迄今爲止您嘗試過哪些方法,以及您卡在哪裏,謝謝! – plamut

+0

@plamut我所做的只是plt.plot(data.X,data.Y,'。b'),但問題是我不知道如何爲每個數據點着色/ –

+0

也許可以通過'color = data.heat '選項? (不知道,但對我來說這似乎很合理) – ysearka

回答

3

documentation

關鍵字C可以給出一列的名稱爲每個點提供顏色:

In [64]: df.plot.scatter(x='a', y='b', c='c', s=50); 

所以你需要什麼要做的只是指定heat列包含有關每個點顏色的信息:

df.plot.scatter(x=data.X, y=data.Y, c=data.heat) 

如果要應用自定義顏色的地圖,裏面還有cmap參數,使您可以指定不同的color map

您還可以閱讀更多關於該文檔爲scatter()方法。

+0

你知道如何讓它變得豐富多彩嗎? – MaxU

+0

請參閱我的更新答案 - 有一個'cmap'參數,允許您自定義熱圖(僅適用於'c'是數字列表)。 – plamut

+0

是的,我想,就是這樣! +1 – MaxU