2016-07-30 69 views
1

我遇到以下問題。下面的圖表代表一個區域。顏色是根據它們所屬的時段分配的。由於我有大約22個週期,有時甚至更多,所以在大多數色階上有時很難看到不同時期之間的差異。因此,我想在每個方塊的中間添加小數字。該數字應該與該位置的PeriodNumbersGood數字相同。根據列表值向散點圖位置添加一個數字

我希望任何人都可以幫助我,或者對我有任何提示。

import matplotlib.pyplot as plt 
PeriodNumbersGood = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22] 

XGOOD = [336350.0, 336450.0, 336450.0, 336550.0, 336650.0, 336750.0, 336650.0, 336650.0, 336550.0, 336550.0, 336650.0, 336650.0, 336750.0, 336850.0, 336850.0, 336750.0, 336750.0, 336850.0, 336950.0, 337050.0, 336950.0, 336950.0, 337050.0, 336950.0, 336850.0, 336850.0, 336950.0, 336850.0, 336750.0, 336750.0, 336650.0, 336750.0, 336850.0, 336950.0, 337050.0, 336950.0, 336850.0, 336850.0, 336950.0, 337050.0, 337150.0, 337150.0, 337050.0, 337050.0, 337150.0, 337150.0, 337250.0, 337250.0, 337250.0, 337350.0, 337350.0, 337450.0, 337350.0, 337250.0, 337350.0, 337250.0, 337150.0, 337050.0, 337150.0, 337050.0, 337150.0, 337250.0, 337350.0, 337250.0, 337250.0, 337150.0, 337150.0, 337050.0, 336950.0, 337050.0, 336950.0, 337150.0, 337050.0, 337050.0, 336950.0, 337150.0, 337450.0, 337450.0, 337450.0, 337550.0, 337550.0, 337450.0, 337450.0, 337550.0, 337650.0, 337550.0, 337650.0, 337750.0, 337650.0, 337650.0, 337550.0, 337550.0, 337550.0, 337450.0, 337350.0, 337250.0, 337350.0, 337350.0, 337450.0, 337350.0, 337450.0, 337350.0, 337350.0, 337450.0, 337450.0, 337350.0, 337250.0, 337250.0, 337150.0, 337250.0, 337250.0, 337250.0, 337150.0, 337150.0, 337050.0, 336950.0, 337150.0, 337250.0, 337350.0, 337450.0, 337550.0, 337450.0, 337350.0, 337250.0, 337350.0, 337450.0, 337550.0, 337650.0, 337650.0, 337650.0, 337750.0, 337750.0, 337850.0, 337850.0, 337750.0, 337850.0, 337750.0, 337650.0, 337550.0, 337550.0, 337750.0, 337750.0, 337750.0, 337850.0, 337850.0, 337950.0, 337950.0, 338050.0, 338050.0, 337950.0, 338050.0, 338150.0, 338250.0, 338150.0, 338150.0, 338250.0, 338150.0, 338050.0, 337950.0, 337950.0, 337850.0, 337950.0, 337850.0, 337850.0, 337750.0, 337750.0, 337650.0, 337650.0, 337750.0, 337850.0, 337850.0, 337750.0, 337750.0, 337850.0, 337750.0, 337850.0, 337750.0, 337650.0, 337550.0, 337550.0, 337550.0, 337650.0, 337550.0, 337650.0, 337750.0, 337850.0, 337950.0, 337950.0, 337850.0, 337750.0, 337650.0, 337650.0, 337550.0, 337550.0, 337650.0, 337750.0, 337850.0, 337750.0, 337650.0, 337550.0, 337450.0, 337450.0, 337350.0, 337350.0, 337450.0, 337550.0, 337450.0, 337750.0, 337850.0, 337850.0, 337950.0, 337950.0, 338050.0, 337950.0, 337950.0, 337850.0, 337750.0, 337650.0, 337550.0, 337550.0, 337650.0, 337650.0, 337650.0, 337650.0, 337750.0, 337850.0, 337950.0, 337950.0, 337950.0, 338050.0, 338150.0, 338150.0, 338050.0, 338050.0, 337950.0, 337850.0, 337750.0, 337850.0, 337850.0, 337850.0, 337850.0, 337750.0, 337950.0, 338050.0, 338050.0, 338150.0, 338150.0, 338250.0, 338350.0, 338350.0, 338250.0, 338350.0, 338350.0, 338250.0, 338050.0, 338050.0, 338150.0, 338050.0, 338050.0, 338150.0, 338250.0, 338250.0, 337850.0, 337950.0, 337850.0, 336550.0] 
YGOOD = [7089650.0, 7089550.0, 7089650.0, 7089550.0, 7089450.0, 7089350.0, 7089350.0, 7089250.0, 7089350.0, 7089450.0, 7089550.0, 7089650.0, 7089550.0, 7089450.0, 7089350.0, 7089450.0, 7089250.0, 7089250.0, 7089250.0, 7089350.0, 7089450.0, 7089350.0, 7089250.0, 7089150.0, 7089150.0, 7089050.0, 7088950.0, 7088950.0, 7089050.0, 7089150.0, 7089150.0, 7088950.0, 7088850.0, 7088750.0, 7088650.0, 7088650.0, 7088650.0, 7088750.0, 7088850.0, 7088950.0, 7088850.0, 7088950.0, 7089050.0, 7089150.0, 7089050.0, 7089150.0, 7089050.0, 7088950.0, 7088850.0, 7088850.0, 7088750.0, 7088650.0, 7088650.0, 7088550.0, 7088450.0, 7088350.0, 7088450.0, 7088350.0, 7088250.0, 7088250.0, 7088350.0, 7088450.0, 7088550.0, 7088650.0, 7088750.0, 7088650.0, 7088550.0, 7088550.0, 7088450.0, 7088450.0, 7088550.0, 7088750.0, 7088850.0, 7088750.0, 7089050.0, 7089250.0, 7088750.0, 7088550.0, 7088450.0, 7088550.0, 7088450.0, 7088350.0, 7088250.0, 7088350.0, 7088250.0, 7088150.0, 7088050.0, 7088050.0, 7087950.0, 7087850.0, 7087750.0, 7087850.0, 7087950.0, 7088050.0, 7088150.0, 7088250.0, 7088350.0, 7088250.0, 7088150.0, 7088050.0, 7087950.0, 7087950.0, 7087850.0, 7087850.0, 7087750.0, 7087750.0, 7087850.0, 7087750.0, 7087850.0, 7087950.0, 7088050.0, 7088150.0, 7088050.0, 7088150.0, 7088150.0, 7088350.0, 7087950.0, 7087650.0, 7087550.0, 7087450.0, 7087550.0, 7087550.0, 7087450.0, 7087550.0, 7087650.0, 7087650.0, 7087650.0, 7087550.0, 7087650.0, 7087750.0, 7087750.0, 7087650.0, 7087750.0, 7087850.0, 7087850.0, 7087950.0, 7087950.0, 7088150.0, 7088250.0, 7088050.0, 7088150.0, 7087550.0, 7087450.0, 7087550.0, 7087450.0, 7087350.0, 7087250.0, 7087150.0, 7087050.0, 7086950.0, 7086950.0, 7086850.0, 7086750.0, 7086650.0, 7086750.0, 7086650.0, 7086550.0, 7086450.0, 7086450.0, 7086350.0, 7086250.0, 7086150.0, 7086150.0, 7086050.0, 7086150.0, 7086250.0, 7086250.0, 7086350.0, 7086350.0, 7086350.0, 7086450.0, 7086450.0, 7086550.0, 7086650.0, 7086750.0, 7086750.0, 7086850.0, 7086850.0, 7086750.0, 7086850.0, 7086950.0, 7086950.0, 7087050.0, 7087050.0, 7087050.0, 7087150.0, 7087150.0, 7087050.0, 7087050.0, 7087150.0, 7087250.0, 7087350.0, 7087350.0, 7087250.0, 7087150.0, 7087250.0, 7087350.0, 7087350.0, 7087450.0, 7087450.0, 7087350.0, 7087250.0, 7087350.0, 7087250.0, 7087150.0, 7087150.0, 7087050.0, 7086950.0, 7086950.0, 7086850.0, 7086850.0, 7086750.0, 7086650.0, 7086650.0, 7086550.0, 7086550.0, 7086650.0, 7086750.0, 7086650.0, 7086550.0, 7086450.0, 7086550.0, 7086650.0, 7086150.0, 7086050.0, 7085950.0, 7085850.0, 7085950.0, 7086050.0, 7086050.0, 7086150.0, 7086050.0, 7085950.0, 7085850.0, 7085750.0, 7085850.0, 7085850.0, 7085750.0, 7085650.0, 7085550.0, 7085450.0, 7085950.0, 7086250.0, 7086150.0, 7086250.0, 7086350.0, 7086450.0, 7086450.0, 7086350.0, 7086250.0, 7086350.0, 7086450.0, 7086550.0, 7086550.0, 7086750.0, 7086850.0, 7086950.0, 7086550.0, 7086350.0, 7086250.0, 7086250.0, 7086150.0, 7087250.0, 7087450.0, 7087650.0, 7089650.0] 

plt.figure() 
az = plt.subplot(111,aspect='equal') 
az.scatter(XGOOD,YGOOD,c=PeriodNumbersGood, marker='s',s=160, lw=0, cmap= 'Dark2') 
plt.show() 

回答

1

使用annotate添加標籤爲每個單元:

... 
for i, label in enumerate(PeriodNumbersGood): 
    az.annotate(label, (XGOOD[i]-35,YGOOD[i]-20)) 
plt.show() 

enter image description here

+1

謝謝,這正是我一直在尋找。 – AlmostGr