This visualization was created using data from the Bureau of Investigative Journalism. To see the full visualization, please click "open" on the right. To learn more about the United States drone program, head to their website here: https://www.thebureauinvestigates.com/projects/drone-war
-
-
Save bumbeishvili/8e0f193c40d92f0b89570a91744ce1d6 to your computer and use it in GitHub Desktop.
American Military Operations in Yemen
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
license: gpl-3.0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Date | Lon | Lat | Location | Province | Type | US | Drone | minStrikes | minKilled | minCivilians | minChildren | minInjured | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
11/03/02 | 15.416667 | 45.35 | Unknown | Marib | Drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
12/17/09 | Uknown | Uknown | Jeezat al Qotn Moudia district | Abyan | Airstrike | 1 | 0 | 1 | 2 | 0 | 0 | 0 | |
12/17/09 | Unknown | Unknown | Unknown | Shabwah | Yemen ground operation; possible US assistance | 0 | 0 | 1 | 1 | 0 | 0 | 0 | |
12/24/09 | 15.204635 | 47.833676 | Al Khamila | Abyan | Drone strike; Yemen Air Force airstrike | 1 | 1 | 2 | 13 | 0 | 0 | 12 | |
01/12/10 | 13.11 | 45.38 | Zinjibar | Abyan | Drone strike | 1 | 1 | 1 | 7 | 4 | 0 | 0 | |
01/15/10 | Unknown | Unknown | Unknown | Shabwah | Drone strike; Airstrike with US conventional aircraft | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/20/10 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 3 | 3 | 0 | 4 | |
01/31/10 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 2 | 9 | 1 | 1 | 2 | |
03/14/10 | Uknown | Uknown | Al Arqoub | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 5 | 0 | 0 | 7 | |
03/15/10 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike | 1 | 1 | 2 | 3 | 0 | 0 | 2 | |
05/24/10 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
05/05/11 | Unknown | Unknown | Raia | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 2 | 1 | 0 | |
06/03/11 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 11 | 0 | 0 | 0 | |
06/10/11 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 10 | 0 | 0 | 0 | |
06/10/11 | Unknown | Unknown | Radaa | Bayda | US airstrike, possible drone strike | 1 | 0 | 1 | 12 | 12 | 3 | 4 | |
06/18/11 | 14.799239 | Ê45.717974 | Bayhan | Shabwah | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
07/14/11 | Unknown | Unknown | Unknown | Bayda | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
07/14/11 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike | 0 | 0 | 1 | 3 | 0 | 0 | 7 | |
07/27/11 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
08/01/11 | Uknown | Uknown | Al Saeed | Shabwah | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
08/24/11 | 16.299499 | 44.567527 | Al Zahir | Bayda | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
08/24/11 | 13.4809 | 45.5309 | Al Ain | Shabwah | Drone strike | 1 | 1 | 1 | 4 | 1 | 0 | 3 | |
08/25/11 | Unknown | Unknown | Wadi Rafad | Shabwah | Drone strike | 1 | 1 | 1 | 2 | 1 | 0 | 0 | |
08/31/11 | Unknown | Unknown | Radaa | Bayda | Drone strike | 1 | 1 | 1 | 7 | 0 | 0 | 0 | |
09/05/11 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 10 | 0 | 0 | 1 | |
09/05/11 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 1 | 9 | 0 | 0 | 0 | |
09/07/11 | Unknown | Unknown | Unknown | Shabwah | Drone strike | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |
09/21/11 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
09/21/11 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 5 | 0 | 0 | 3 | |
09/30/11 | 13.930778 | 46.078456 | Moudia | Abyan | Airstrike | 0 | 0 | 1 | 2 | 0 | 0 | 7 | |
10/05/11 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 2 | |
10/14/11 | Uknown | Uknown | Beit al Ahan | Sanaa | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
10/14/11 | Unknown | Unknown | Unknown | Abyan | Airstrike - joint Yemeni and US; possible drone strike | 0 | 1 | 2 | 16 | 0 | 0 | 0 | |
10/14/11 | Unknown | Unknown | Unknown | Bayda | Drone strike | 1 | 1 | 1 | 23 | 2 | 0 | 0 | |
10/14/11 | 13.214336 | 45.307229 | Jaar | Abyan | Drone strike | 1 | 1 | 2 | 24 | 0 | 0 | 0 | |
12/22/11 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike; possible Naval bombardment; possible drone strike | 0 | 1 | 2 | 5 | 0 | 0 | 0 | |
01/31/12 | 13.355833 | 45.699722 | Shaqra | Abyan | Airstrike; possible Naval bombardment; possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/31/12 | 13.4809 | 45.5309 | Al Ain | Shabwah | Drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 3 | |
03/09/12 | Uknown | Uknown | Jebel Khanfar Near Jaar | Abyan | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
03/10/12 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 10 | 0 | 0 | 10 | |
03/11/12 | 14.325436 | 47.446588 | Azzan | Shabwah | Airstrike | 0 | 0 | 1 | 16 | 0 | 0 | 0 | |
03/13/12 | Uknown | Uknown | Al Hosoon | Marib | Drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
03/18/12 | Unknown | Unknown | Unknown | Marib | Drone strike | 1 | 1 | 1 | 10 | 0 | 0 | 0 | |
03/18/12 | 13.4809 | 45.5309 | Al Ain | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 6 | 0 | 0 | 0 | |
03/22/12 | Unknown | Unknown | Unknown | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
03/30/12 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 7 | 0 | 0 | 2 | |
04/07/12 | Unknown | Unknown | Wadi Ser | Hadramout | Drone strike | 1 | 1 | 1 | 3 | 4 | 1 | 3 | |
04/08/12 | Unknown | Unknown | Radaa | Bayda | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/11/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
04/14/12 | Unknown | Unknown | Markha | Shabwah | Drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
04/16/12 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/18/12 | Uknown | Uknown | Al Ayoun | Hadramout | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/21/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 3 | 2 | 2 | 0 | |
04/22/12 | Uknown | Uknown | Al Makashma/ Khab al Shath | Al Jawf | Drone strike | 1 | 1 | 1 | 2 | 1 | 1 | 0 | |
04/23/12 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/23/12 | Uknown | Uknown | Al Askariya | Lahij | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
04/26/12 | Unknown | Unknown | Radaa | Bayda | Drone strike | 1 | 1 | 1 | 12 | 8 | 0 | 5 | |
04/29/12 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 4 | |
04/30/12 | Unknown | Unknown | Shabwahn | Marib | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
04/30/12 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 0 | |
05/02/12 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
05/06/12 | Unknown | Unknown | Radhum | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 2 | |
05/10/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
05/10/12 | Unknown | Unknown | Radaa | Bayda | Drone strike | 1 | 1 | 3 | 9 | 0 | 0 | 0 | |
05/12/12 | Unknown | Unknown | Khalek | Al Jawf | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
05/12/12 | Unknown | Unknown | Radaa | Bayda | Drone strike | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |
05/12/12 | Uknown | Uknown | Dafaar | Shabwah | US ground operation 0 US air and drone strike | 1 | 0 | 1 | 11 | 8 | 1 | 0 | |
05/14/12 | Unknown | Unknown | Nasab | Shabwah | US drone strike | 1 | 1 | 1 | 9 | 0 | 0 | 3 | |
05/14/12 | Uknown | Uknown | Mafraq al Saeed | Marib | Drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
05/14/12 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
05/15/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
05/16/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
05/17/12 | Unknown | Unknown | Unknown | Shabwah | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
05/17/12 | 16.711112 | 44.869199 | Khab Wal Saaf | Al Jawf | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
05/19/12 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
05/19/12 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
05/20/12 | Unknown | Unknown | Markha district | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 3 | |
05/28/12 | Unknown | Unknown | Unknown | Bayda | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
05/28/12 | Unknown | Unknown | Unknown | Al Jawf | Airstrike, possible drone strike | 0 | 1 | 1 | 5 | 0 | 0 | 0 | |
06/01/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
06/07/12 | Uknown | Uknown | Mafraq | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/07/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
06/07/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
06/11/12 | 14.536389 | 46.833056 | Ataq | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
06/13/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 2 | |
06/13/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/15/12 | Unknown | Unknown | Unknown | Al Jawf | Airstrike, possible drone strike | 0 | 1 | 1 | 4 | 0 | 0 | 0 | |
06/15/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/19/12 | 14.537172 | 49.142387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
06/20/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
06/20/12 | 14.94093 | 47.049826 | Gardan | Shabwah | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/25/12 | Unknown | Unknown | Maraquesha | Abyan | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
07/03/12 | Unknown | Unknown | Rawda city | Shabwah | US drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
07/04/12 | 14.537172 | 49.122387 | Mukalla | Hadramout | Airstrike, 0 US drone strike | 0 | 1 | 4 | 0 | 0 | 0 | 0 | |
07/23/12 | Unknown | Unknown | Radhum | Shabwah | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
08/04/12 | Unknown | Unknown | Musaina | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
08/06/12 | 14.325436 | 47.446588 | Azzan | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
08/07/12 | Unknown | Unknown | Unknown | Shabwah | US air or drone strike | 1 | 1 | 1 | 6 | 0 | 0 | 0 | |
08/28/12 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike | 0 | 0 | 2 | 0 | 0 | 0 | 0 | |
08/29/12 | Unknown | Unknown | Unknown | Shabwah | US air or drone strike | 1 | 0 | 1 | 2 | 0 | 0 | 0 | |
08/31/12 | Unknown | Unknown | Unknown | Unknown | US drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
09/02/12 | Unknown | Unknown | Unknown | Bayda | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
09/05/12 | Unknown | Unknown | Radaa area | Bayda | US drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
09/10/12 | Unknown | Unknown | Unknown | Marib | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
09/20/12 | Uknown | Uknown | Jabul | Marib | US drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 4 | |
10/04/12 | 14.353267 | 47.077225 | Haban | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 1 | |
10/18/12 | Unknown | Unknown | North of the Bab el-Mandeb strait | Unknown | US cruise missle strike | 1 | 0 | 3 | 0 | 0 | 0 | 0 | |
10/21/12 | Unknown | Unknown | Unknown | Marib | US air or drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
10/28/12 | Uknown | Uknown | Al Wadei | Abyan | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
11/07/12 | Unknown | Unknown | Unknown | Unknown | US air or drone strikes | 1 | 0 | 25 | 2 | 0 | 0 | 0 | |
12/24/12 | Unknown | Unknown | Unknown | Shabwah | US air or drone strikes | 1 | 0 | 20 | 0 | 0 | 0 | 0 | |
12/24/12 | Uknown | Uknown | Al Wadi | Marib | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
12/28/12 | Unknown | Unknown | Unknown | Unknown | US air or drone strikes | 1 | 0 | 5 | 1 | 0 | 0 | 0 | |
12/29/12 | 13.516667 | 46.7 | Ahwar | Abyan | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/01/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
01/04/13 | Unknown | Unknown | Unknown | Unknown | US air or drone strikes | 1 | 0 | 9 | 7 | 0 | 0 | 0 | |
01/19/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
01/19/13 | Unknown | Unknown | Raghwan | Marib | US air or drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
01/19/13 | Uknown | Uknown | Marakishah | Abyan | US air or drone strike | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |
01/20/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 0 | 3 | 2 | 0 | 0 | 0 | |
01/21/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/22/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
01/23/13 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/23/13 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 0 | 0 | 0 | 2 | |
04/17/13 | 13.355833 | 45.699722 | Shaqra | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 10 | 0 | 0 | 0 | |
04/21/13 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 6 | 0 | 0 | 0 | |
05/18/13 | Unknown | Unknown | Unknown | Abyan | Drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 0 | |
05/20/13 | Unknown | Unknown | Wadeea district Mudiya | Abyan | Drone strike | 1 | 1 | 1 | 6 | 30 | 0 | 0 | |
06/01/13 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |
06/09/13 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 1 | 7 | 2 | 2 | 0 | |
07/27/13 | 14.325436 | 47.446588 | Azzan | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 1 | 1 | 0 | |
07/30/13 | Unknown | Unknown | Unknown | Unknown | Airstrike, possible drone strike | 0 | 1 | 1 | 15 | 0 | 0 | 0 | |
08/01/13 | 17.11 | 44.48 | Al Ajashir | Saada | Airstrike | 0 | 0 | 1 | 0 | 0 | 0 | 0 | |
08/06/13 | 15.926939 | 48.626669 | Shibam | Hadramout | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 1 | 0 | 0 | |
08/07/13 | Unknown | Unknown | Rafadh | Shabwah | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
08/08/13 | 13.057781 | 44.881258 | Huta | Lahij | Airstrike, possible US drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
08/08/13 | 13.930778 | 46.078456 | Moudia | Abyan | Airstrike | 0 | 0 | 1 | 7 | 0 | 0 | 0 | |
08/08/13 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike, possible drone strike | 0 | 1 | 2 | 14 | 14 | 0 | 20 | |
08/10/13 | 13.355833 | 45.699722 | Shaqra | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 5 | 5 | 4 | 4 | |
08/30/13 | 14.325436 | 47.446588 | Azzan | Shabwah | Airstrike | 0 | 0 | 1 | 5 | 0 | 0 | 2 | |
11/19/13 | Uknown | uknown | Bani Assaf Mayfaa | Shabwah | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
11/26/13 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
12/09/13 | 13.930778 | 46.078456 | Moudia | Abyan | Airstrike; possible naval bombardment; possible drone strike | 0 | 1 | 1 | 16 | 0 | 0 | 5 | |
12/12/13 | Unknown | Unknown | Unknown | Shabwah | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
12/27/13 | Uknown | Uknown | Al Naqba | Shabwah | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
12/31/13 | 16.049973 | 48.533336 | Al Uqlah | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/06/14 | Unknown | Unknown | Unknown | Hadramout | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
01/08/14 | Unknown | Unknown | Unknown | Unknown | US air or drone strike | 1 | 0 | 8 | 0 | 0 | 0 | 0 | |
01/15/14 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 0 | 2 | 50 | 0 | 0 | 0 | |
01/24/14 | Unknown | Unknown | Wassab al Ali | Damar | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
02/03/14 | 14.353267 | 47.077225 | Habban | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
03/02/14 | 13.355833 | 45.699722 | Shaqra | Abyan | Airstrike | 0 | 0 | 1 | 5 | 0 | 0 | 0 | |
03/03/14 | 15.926939 | 48.626669 | Shibam | Hadramout | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
03/03/14 | 13.975674 | 46.455292 | Al Majala | Abyan | Cruise missile strike | 1 | 0 | 1 | 55 | 44 | 21 | 9 | |
03/05/14 | 15.406 | 44.2157 | Arhab | Sanaa | US-Yemen ground operation, possible drone strike | 1 | 0 | 1 | 0 | 0 | 0 | 0 | |
03/10/14 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike; possible naval bombardment; possible drone strike | 0 | 1 | 1 | 14 | 0 | 0 | 0 | |
03/12/14 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 8 | 0 | 0 | 0 | |
04/01/14 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 6 | 0 | 0 | 0 | |
04/19/14 | Unknown | Unknown | Unknown | Marib | US air or drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/20/14 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
04/21/14 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 6 | |
05/12/14 | 13.214336 | 45.307229 | Jaar | Abyan | Drone strike | 1 | 1 | 2 | 7 | 0 | 0 | 0 | |
06/04/14 | Unknown | Unknown | Unknown | Shabwah | US air or drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
06/13/14 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |
06/21/14 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
08/09/14 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
08/16/14 | 15.966667 | 48.783333 | Sayoun | Hadramout | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
09/11/14 | 14.08 | 45.08 | Sawmaah | Bayda | Drone strike | 1 | 1 | 1 | 13 | 3 | 0 | 1 | |
09/25/14 | Unknown | Unknown | Saeed district | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
09/26/14 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 3 | 0 | 0 | 0 | |
10/15/14 | Unknown | Unknown | Unknown | Bayda | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
10/24/14 | Unknown | Unknown | Unknown | Shabwah | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
10/26/14 | Unknown | Unknown | Unknown | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
11/04/14 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
11/12/14 | Unknown | Unknown | Unknown | Unknown | US air or drone strike | 1 | 0 | 7 | 0 | 0 | 0 | 0 | |
11/26/14 | 14.773346 | 49.375256 | Ghayl Bawazir | Hadramout | Airstrike, possible drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
12/06/14 | Uknown | Uknown | Erq al Shawan | Marib | Airstrike | 0 | 0 | 4 | 2 | 0 | 0 | 0 | |
12/06/14 | Uknown | Uknown | Al Kanais | Marib | Airstrike, possible drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
01/26/15 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
01/31/15 | 13.058158 | 44.882541 | Al Houta | Shabwah | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
02/02/15 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike Yemen Air Force airstrike | 1 | 1 | 1 | 24 | 1 | 1 | 1 | |
02/20/15 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike | 0 | 0 | 1 | 0 | 0 | 0 | 0 | |
02/28/15 | Unknown | Unknown | Radaa | Bayda | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
03/01/15 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 1 | 1 | 0 | 0 | |
04/12/15 | Uknown | Uknown | Al Yafea | Bayda | Airstrike | 0 | 0 | 6 | 5 | 0 | 0 | 6 | |
04/17/15 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 3 | |
04/19/15 | 15.4584 | 45.3864 | Wadi Abida | Marib | US drone or air strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/21/15 | Unknown | Unknown | Nakhla | Marib | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 2 | |
05/08/15 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
05/10/15 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike, possible drone strike | 0 | 1 | 2 | 12 | 0 | 0 | 0 | |
05/11/15 | 15.4584 | 45.3864 | Wadi Abida | Marib | Airstrike, possible drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 2 | |
05/16/15 | Unknown | Unknown | Usylan | Shabwah | US-Yemen ground operation; possible drone strike | 1 | 0 | 1 | 3 | 1 | 1 | 0 | |
05/22/15 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
06/02/15 | Unknown | Unknown | Unknown | Bayda | Airstrike, possible drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 0 | |
06/09/15 | 14.92794 | 45.505337 | Hareeb | Marib | Airstrike; possible US drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/25/15 | 13.355833 | 45.699722 | Shaqra | Abyan | Airstrike | 0 | 0 | 1 | 6 | 0 | 0 | 3 | |
06/26/15 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
06/26/15 | 15.477898 | 45.318823 | Marib city | Marib | Airstrike; possible US drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
07/03/15 | 15.416667 | 45.35 | Maarib | Marib | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
07/11/15 | Unknown | Unknown | Unknown | Marib | US air or drone strike | 1 | 0 | 1 | 5 | 0 | 0 | 0 | |
07/29/15 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
08/12/15 | Uknown | Uknown | Al Boka | Al Jawf | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
08/21/15 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 1 | 0 | 0 | 0 | |
08/23/15 | 13.11 | 45.38 | Zinjibar | Abyan | Drone strike 0 naval bombardment | 1 | 1 | 3 | 29 | 0 | 0 | 24 | |
08/26/15 | 14.576556 | 48.472696 | Hajr (75km W of Mukalla) | Hadramout | US air strike | 1 | 0 | 1 | 50 | 0 | 0 | 28 | |
09/09/15 | Unknown | Unknown | Sanda | Marib | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
09/11/15 | Unknown | Unknown | Unknown | Shabwah | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
09/12/15 | 14.08 | 45.08 | Sawmaah | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
09/21/15 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
12/22/15 | Unknown | Unknown | Nata district | Bayda | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
01/15/16 | Unknown | Unknown | Qayfa | Bayda | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
01/19/16 | 15.209748 | 44.463251 | Khawlan | Sanaa | Drone strike | 1 | 1 | 1 | 4 | 2 | 0 | 0 | |
02/03/16 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 0 | 0 | 0 | 0 | |
02/03/16 | Unknown | Unknown | Nasab | Shabwah | Airstrike 0 drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 2 | |
02/15/16 | Uknown | Uknown | Alemien | Marib | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
02/29/16 | Uknown | Uknown | al Said | Shabwah | US air or drone strike | 1 | 1 | 1 | 3 | 3 | 0 | 0 | |
03/04/16 | Uknown | Uknown | Al Sirim area | Marib | US air and ground operation Special forces raid with air strikes, possibly drone | 1 | 0 | 1 | 7 | 5 | 0 | 5 | |
03/22/16 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike | 0 | 0 | 1 | 5 | 0 | 0 | 0 | |
03/26/16 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
03/26/16 | Unknown | Unknown | Unknown | Marib | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
03/28/16 | 15.4584 | 45.3864 | Wadi Abida | Marib | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
03/30/16 | Unknown | Unknown | Unknown | Unknown | US air or drone strike | 1 | 0 | 8 | 0 | 0 | 0 | 0 | |
03/30/16 | Unknown | Unknown | Unknown | Marib | Airstrike | 1 | 0 | 1 | 3 | 3 | 0 | 2 | |
04/03/16 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike | 0 | 0 | 1 | 30 | 0 | 0 | 40 | |
04/05/16 | Uknown | Uknown | Arkoub | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 6 | 0 | 0 | 0 | |
04/23/16 | Unknown | Unknown | Unknown | Shabwah | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
04/25/16 | Unknown | Unknown | Radaa | Bayda | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/25/16 | 14.08 | 45.08 | Sawmaah | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/28/16 | Unknown | Unknown | Rafd | Shabwah | Airstrike 0 cruise missile strike | 1 | 0 | 1 | 30 | 0 | 0 | 0 | |
05/19/16 | Uknown | Uknown | Manaseh | Bayda | Airstrike 0 drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 3 | |
06/09/16 | 14.760833 | 49.606944 | Shehr | Hadramout | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 1 | |
06/10/16 | 13.11 | 45.38 | Zinjibar | Abyan | US drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
06/12/16 | 14.325436 | 47.446588 | Azzan | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
07/01/16 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
07/04/16 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 2 | |
07/08/16 | Unknown | Unknown | Wadi Hassan | Abyan | Airstrike | 0 | 0 | 1 | 8 | 0 | 0 | 3 | |
07/10/16 | Unknown | Unknown | Nasab Near Ataq | Shabwah | Airstrike 0 drone strike | 0 | 1 | 1 | 4 | 0 | 0 | 0 | |
07/16/16 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 0 | 2 | 9 | 0 | 0 | 0 | |
08/04/16 | 14.92794 | 45.505337 | Hareeb | Marib | US drone strike | 1 | 1 | 1 | 3 | 1 | 1 | 0 | |
08/24/16 | 13.11 | 45.38 | Zinjibar | Abyan | Airstrike, 0 US drone strike | 0 | 1 | 1 | 6 | 0 | 0 | 0 | |
08/30/16 | Uknown | Uknown | Al Hudhn and Naqeel al Hayala villages | Abyan | Airstrike, 0 US drone strike | 0 | 1 | 2 | 8 | 0 | 0 | 0 | |
09/04/16 | 13.930778 | 46.078456 | Moudia | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
09/13/16 | 14.537172 | 49.122387 | Mukalla | Hadramout | Airstrike 0 US drone strike | 0 | 1 | 1 | 4 | 0 | 0 | 0 | |
09/20/16 | Unknown | Unknown | Rafadh | Shabwah | Airstrike 0 US drone strike | 0 | 1 | 1 | 4 | 0 | 0 | 0 | |
09/22/16 | 14.537172 | 49.122387 | Mukalla | Hadramout | US drone strike | 1 | 1 | 1 | 5 | 0 | 0 | 0 | |
09/23/16 | Unknown | Unknown | Khasaf | Al Jawf | Airstrike 0 drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 3 | |
09/29/16 | Unknown | Unknown | Radaa | Bayda | Airstrike 0 drone strike Yemeni air and ground operations | 0 | 1 | 1 | 12 | 2 | 0 | 0 | |
10/06/16 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 12 | 0 | 0 | 0 | |
10/12/16 | Unknown | Unknown | Hagr al Saiaar | Hadramout | US-Yemen ground operation | 1 | 0 | 1 | 7 | 0 | 0 | 0 | |
10/18/16 | Uknown | Uknown | Karadeef Zinjibar | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 5 | 0 | 0 | 0 | |
10/21/16 | 14.058212 | 46.914158 | Mahfed | Abyan | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
11/21/16 | 15.926939 | 48.626669 | Shibam | Hadramout | Airstrike 0 drone strike | 0 | 1 | 1 | 1 | 0 | 0 | 0 | |
11/24/16 | Unknown | Unknown | Yakla | Bayda | US air and ground operation Special forces air assault and air support, possibly drone | 1 | 0 | 1 | 39 | 25 | 10 | 7 | |
11/30/16 | Uknown | Uknown | Bihan region | Shabwah | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
12/13/16 | 14.537172 | 49.122387 | Mukalla | Hadramout | Airstrike | 0 | 0 | 1 | 5 | 3 | 0 | 0 | |
12/29/16 | Unknown | Unknown | Unknown | Shabwah | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 1 | |
01/08/17 | 14.537172 | 49.122387 | Mukalla | Abyan | Airstrike 0 naval bombardment 0 drone strike | 0 | 1 | 1 | 5 | 0 | 0 | 0 | |
01/20/17 | Uknown | Uknown | Manaseh | Bayda | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 4 | |
01/21/17 | Unknown | Unknown | Qahb al-Hisan | Hadramout | Drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/22/17 | Unknown | Unknown | Wadi al Abu Jabara | Saada | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 1 | |
01/28/17 | 14.760833 | 49.606944 | Shehr | Hadramout | Airstrike 0 drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 | |
01/30/17 | Unknown | Unknown | Unknown | Hadramout | US drone or air strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
03/02/17 | Unknown | Unknown | Unknown | Al Jawf | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
03/03/17 | Unknown | Unknown | Unknown | Marib | US air or drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
03/04/17 | Unknown | Unknown | Unknown | Shabwah | US air or drone strike | 1 | 0 | 1 | 3 | 0 | 0 | 0 | |
03/06/17 | Unknown | Unknown | Wadi Dikha | Abyan | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
03/31/17 | 15.839417 | 48.484938 | Al Qotn | Hadramout | Drone strike | 1 | 1 | 1 | 5 | 2 | 0 | 0 | |
04/02/17 | Unknown | Unknown | Unknown | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/18/17 | Uknown | Uknown | Manaseh | Bayda | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
04/23/17 | 14.08 | 45.08 | Sawmaah | Bayda | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/24/17 | 14.8 | 45.733333 | Baihan | Shabwah | US air or drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
04/29/17 | 14.325436 | 47.446588 | Azzan | Shabwah | Drone strike | 1 | 1 | 2 | 5 | 1 | 0 | 6 | |
04/29/17 | 14.537172 | 49.122387 | Mukalla | Hadramout | Airstrike | 0 | 0 | 3 | 0 | 0 | 0 | 0 | |
05/23/17 | 14.325436 | 47.446588 | Azzan | Shabwah | US drone strike | 1 | 1 | 1 | 2 | 0 | 0 | 0 | |
06/16/17 | 13.214336 | 45.307229 | Jaar | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 3 | 0 | 0 | 0 | |
07/01/17 | 13.881578 | 45.870899 | Lawder | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 4 | 0 | 0 | 0 | |
08/13/17 | Uknown | Uknown | Al Saeed | Shabwah | Drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
09/09/17 | Uknown | Uknown | Manaseh | Bayda | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
09/16/17 | Unknown | Unknown | Unknown | Shabwah | US air or drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
10/04/17 | Unknown | Unknown | Unknown | Al Jawf | Drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
10/08/17 | Unknown | Unknown | Unknown | Hadramout | US air or drone strike | 1 | 1 | 1 | 3 | 0 | 0 | 0 | |
10/16/17 | Unknown | Unknown | N/A | Unknown | US ground operations | 0 | 0 | 24 | 0 | 0 | 0 | 0 | |
10/19/17 | 13.881578 | 45.870899 | Lawder | Abyan | Drone strike | 1 | 1 | 1 | 10 | 0 | 0 | 0 | |
10/19/17 | Unknown | Unknown | Unknown | Abyan | Airstrike | 1 | 0 | 3 | 0 | 0 | 0 | 0 | |
10/25/17 | Uknown | Uknown | Al Saeed | Shabwah | US drone strike | 1 | 1 | 1 | 4 | 0 | 0 | 0 | |
11/02/17 | Unknown | Unknown | Unknown | Unknown | US air or drone strikes | 1 | 0 | 10 | 0 | 0 | 0 | 0 | |
11/10/17 | Unknown | Unknown | Unknown | Abyan | Airstrike | 1 | 0 | 2 | 30 | 0 | 0 | 0 | |
11/11/17 | Uknown | Uknown | Hawda | Hadramout | Drone strike | 1 | 1 | 1 | 8 | 0 | 0 | 0 | |
11/12/17 | 14.058212 | 46.914158 | Mahfed | Abyan | Airstrike 0 drone strike | 0 | 1 | 1 | 2 | 0 | 0 | 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!doctype html> | |
<html> | |
<head> | |
<title>Drones in Yemen</title> | |
<meta charset="utf-8" /> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/4.12.0/d3.min.js" charset="utf-8"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3-legend/2.25.0/d3-legend.min.js"></script> | |
<link href="https://fonts.googleapis.com/css?family=Raleway" rel="stylesheet"> | |
<link rel="stylesheet" type="text/css" href="styles.css"> | |
</head> | |
<body> | |
<div id="title">US Strikes in Yemen</div> | |
<div class="info"><i>*Scroll or double-click to zoom.<br>Drag slider to change date.*</i></div> | |
<input type="range" min="1036000000000" max="1510462800000" class="slider" value="0" id ="slider"/> | |
</body> | |
<script> | |
var width = 700 | |
var height = 600 | |
var scale = width * 5 | |
var q = d3.queue(); | |
q.defer(d3.request, "yemen.json") | |
q.defer(d3.request, "droneData.csv") | |
q.await(function(error, yemen, droneData) { | |
if (error) throw error; | |
var drones = d3.csvParse(droneData.responseText) | |
var yemen = JSON.parse(yemen.responseText) | |
var tooltip = d3.select("body").append("div") | |
.attr("id", "tooltip") | |
.classed("showing", true) | |
.style("opacity", 0) | |
.classed("showing", true) | |
.style("z-index", 3) | |
var zoomExtent = d3.zoom().scaleExtent([1, 20]); | |
var svg = d3.select("body").append("svg") | |
.classed("svg", true) | |
.attr("width", width) | |
.attr("height", height) | |
.call(zoomExtent | |
.on("zoom", zoom)) | |
var g = d3.select("svg") | |
.append("g") | |
.attr("id", "mainChart") | |
function zoom() { | |
d3.select("rect#dataBackground").remove(); | |
let k = d3.event.transform.k | |
g.attr("transform", d3.event.transform) | |
g.selectAll("circle") | |
.transition() | |
.attr("r", d => (1 + Math.sqrt((d.minKilled) / Math.PI) * 4) / k) | |
.style("fill", d => d.minChildren ? "red" : "orange") | |
} | |
var svg2 = d3.select("body").append("svg") | |
.classed("svg2", true) | |
.attr("width", width) | |
.attr("height", height / 2 + 5) | |
svg2.append("g") | |
.attr("id", "barGroup") | |
.attr("transform", "translate(50,0)") | |
// DRAW OUR Districts // | |
var projection = d3.geoMercator() | |
.scale(scale) | |
.translate([-2550, 1325]) | |
var geoPath = d3.geoPath() | |
.projection(projection); | |
g.selectAll("path") | |
.data(yemen.features) // Must access the features array | |
.enter() | |
.append("path") | |
.attr("d", geoPath) | |
.attr("class", "districts") | |
.attr("id", function(d, i) { | |
if (d.properties.name) { | |
return d.properties.name.replace(/\s+/g, '') | |
} | |
}) | |
.attr("provKilled", 0) | |
.attr("provStrikes", 0) | |
.on("mouseover", showData) | |
.on("mousemove", moveData) | |
.on("mouseleave", hideData) | |
.classed("notYemen", function(d) { | |
return d.properties.sov_a3 == "YEM" ? false : true | |
}) | |
// Add Labels | |
var allProvinces = d3.selectAll("path").data() | |
var provinceNames = [] | |
allProvinces.forEach(function(d) { | |
// Get province name | |
let provName = d.properties.name | |
// Find center of Province | |
let thisCenter = geoPath.centroid(d); | |
thisCenter.push(provName) | |
provinceNames.push(thisCenter) | |
}) | |
g.selectAll("text") | |
.data(provinceNames) | |
.enter() | |
.append("text") | |
.attr("x", (d, i) => d[0]) | |
.attr("y", (d, i) => d[1]) | |
.text(d => (d[2])) | |
.style("text-anchor", "middle") | |
// Process Drone data | |
var totalKilled = 0; | |
var totalStrikes = 0; | |
var mappableStrikes = [] | |
drones.forEach(function(d) { | |
d.UTC = Date.parse(d.Date) | |
d.Drone = +d.Drone | |
d.US = +d.US | |
d.Province = d.Province.replace(/\s+/g, '') | |
d.minChildren = +d.minChildren | |
d.minCivilians = +d.minCivilians | |
d.minInjured = +d.minInjured | |
d.minKilled = +d.minKilled | |
d.minStrikes = +d.minStrike | |
d.Lat = +d.Lat | |
d.Lon = +d.Lon | |
totalKilled = totalKilled + d.minKilled | |
totalStrikes++ | |
if ((d.Drone) && (d.US)) { | |
let provinceTarget = `#${d.Province}` | |
if (provinceTarget != "#Unknown") { | |
var districtPath = d3.select(provinceTarget) | |
var currentKilled = districtPath.attr("provKilled") | |
var currentStrikes = d3.select(provinceTarget).attr("provStrikes") | |
var updateKilled = parseInt(currentKilled) + parseInt(d.minKilled) | |
var updateStrikes = parseInt(currentStrikes) + 1 | |
districtPath.attr("provKilled", updateKilled) | |
districtPath.attr("provStrikes", updateStrikes) | |
} | |
} | |
if ((d.Lat) && (d.Lon)) { | |
mappableStrikes.push(d) | |
} | |
}) | |
// Slider | |
d3.select("input") | |
.on("mousemove", remapData) | |
d3.select("body") | |
.append("div") | |
.classed("legendData", true) | |
.attr("x", (width / 2) / 2) | |
.attr("y", 50) | |
.attr("id", "barData") | |
.html("By 11/2/2002, the United States military had launched <span class='warning'>0 strikes</span> in Yemen, killing a total of <span class 'warning'>0 people</span>.") | |
// Add Scale + Initialize Force | |
var timeParse = d3.timeParse("%m/%d/%y") | |
var xScale = d3.scaleTime() | |
.range([0, 550]).domain([timeParse("01/01/02"), timeParse("01/01/18")]) | |
var yScale = d3.scaleLinear() | |
.range([225, 0]) | |
.domain([0, 55]) | |
var xAxis = d3.axisBottom(xScale) | |
.ticks(15) | |
.tickSize(225) | |
var yAxis = d3.axisLeft(yScale) | |
.ticks(10) | |
.tickSize(560) | |
d3.select("#barGroup") | |
.append("g") | |
.attr("id", "xAxis") | |
.call(xAxis) | |
.attr("transform", "translate(25,25)") | |
d3.select("#barGroup") | |
.append("g") | |
.attr("id", "yAxis") | |
.attr("transform", "translate(575,25)") | |
.call(yAxis) | |
d3.selectAll("path.domain").attr("d", "M0.5,-1V0.5H550.5V-1") | |
.attr("transform", "translate(0,225)") | |
d3.select("g#yAxis path.domain").remove(); | |
d3.select("g#yAxis g.tick").remove() | |
d3.select("g#yAxis g.tick text").style("text-anchor", "end") | |
d3.select("#barGroup") | |
.append("text") | |
.text("Year of Strike") | |
.attr("x", width / 2 - 50) | |
.attr("y", height / 2 - 10) | |
.style("font-size", 15 + "px") | |
d3.select("#barGroup") | |
.append("text") | |
.text("Yemenis Killed") | |
.attr("x", -130) | |
.attr("y", -10) | |
.style("font-size", 15 + "px") | |
.attr("transform", "rotate(-90)") | |
// Mapping Data Function | |
function remapData(d) { | |
//Geographic | |
var currentVal = parseInt(document.getElementsByClassName("slider")["0"].value) | |
let topDate = new Date(currentVal) | |
let month = topDate.getMonth() + 1 | |
let date = topDate.getDate() | |
let year = topDate.getFullYear() | |
let barStrikes = drones.filter(function(d) { | |
return d.UTC <= currentVal ? true : false; | |
}); | |
let filtStrikes = mappableStrikes.filter(function(d) { | |
return d.UTC <= currentVal ? true : false; | |
}) | |
let thusKilled = d3.sum(barStrikes, function(d) { | |
return d.minKilled | |
}) | |
let dataBind = g.selectAll("circle") | |
.data(filtStrikes) | |
dataBind | |
.enter() | |
.append("circle") | |
.attr("class", (d, i) => "cir" + i) | |
.on("mouseover", showStrike) | |
.on("mouseleave", hideData) | |
.on("click", function(d, i) { | |
let val = d3.select(this).data()["0"].Date | |
d3.select("#slider").valueOf().node().value = d.UTC; | |
svg2.selectAll("rect").filter(function(d) { | |
if (d.UTC > parseInt(document.getElementsByClassName("slider")["0"].value)) { | |
return true | |
} else { | |
return false | |
} | |
}).remove(); | |
showStrike(); | |
}) | |
.attr("cx", d => projection([d.Lat, d.Lon])[0]) | |
.attr("cy", d => projection([d.Lat, d.Lon])[1]) | |
.transition() | |
.attr("r", d => 1 + Math.sqrt((d.minKilled) / Math.PI) * 4) | |
.style("fill", d => d.minChildren ? "red" : "orange") | |
dataBind | |
.exit() | |
.remove() | |
let dataBind2 = d3.select("#barGroup").selectAll("rect") | |
.data(filtStrikes) | |
dataBind2.enter() | |
.append("rect") | |
.attr("class", (d, i) => "cir" + i) | |
.on("mouseover", showStrike) | |
.on("mouseleave", hideData) | |
.on("click", function(d, i) { | |
let val = d3.select("#slider").valueOf().node().value | |
d3.select("#slider").valueOf().node().value = d.UTC | |
showStrike(); | |
}) | |
.attr("x", d => xScale(timeParse(d.Date))) | |
.attr("y", d => yScale(d.minKilled) + 24) | |
.attr("height", d => yScale(55 - d.minKilled)) | |
.attr("width", 10) | |
.style("fill", d => d.minChildren ? "red" : "orange") | |
.attr("transform", "translate(20,0)") | |
dataBind2 | |
.exit() | |
.remove() | |
d3.select("#barData").html(`By ${month}/${date}/${year}, the United States military had launched <span class='warning'>${barStrikes.length} strikes</span> in Yemen, killing a total of <span class='warning'>${thusKilled} people</span>.`) | |
} | |
// Color and Label Districts | |
var allDist = document.getElementsByClassName("districts") | |
var killRange = d3.extent(allDist, function(d, i) { | |
return parseInt(d.getAttribute("provKilled")) | |
}) | |
var redScale = d3.scaleLinear().domain(killRange).range(["#FFECEC", "#BA0514"]) | |
function labelDistricts() { | |
var hitRegions = d3.selectAll("path.districts").filter(function(d) { | |
return d3.select(this).attr("provStrikes") != 0 | |
}) | |
.style("fill", function() { | |
return redScale(parseInt(d3.select(this).attr("provKilled"))) | |
}) | |
var distNames = [] | |
hitRegions.each(function(d) { | |
var distName = d.properties.districts | |
var thisCenter = geoPath.centroid(d) | |
thisCenter.push(distName) | |
distNames.push(thisCenter) | |
}) | |
g.selectAll("text") | |
.data(distNames) | |
.enter() | |
.append("text") | |
.attr("x", d => d[0]) | |
.attr("y", d => d[1]) | |
.text(d => d[2]) | |
} | |
labelDistricts(); | |
// Add tooltip | |
function showData(d) { | |
let thisProv = d3.select(this) | |
tooltip.html("<b>Province:</b> " + thisProv.attr("id") + "<br><b>Strikes</b>: " + thisProv.attr("provStrikes") + "<br><b>Killed</b>: " + thisProv.attr("provKilled")) | |
var coordinates | |
coordinates = d3.event; | |
var x = coordinates.x | |
var y = coordinates.y | |
tooltip.style("left", x + 30 + "px") | |
tooltip.style("top", y + "px") | |
d3.select("#tooltip").transition().duration(250).style("opacity", 1) | |
} | |
function moveData(d) { | |
var coordinates | |
coordinates = d3.event; | |
var x = coordinates.x | |
var y = coordinates.y | |
tooltip.style("left", x + 30 + "px") | |
tooltip.style("top", y + "px") | |
} | |
function hideData(d) { | |
d3.select("#tooltip").transition().duration(250).style("opacity", 0) | |
if (this.hasAttribute("cx") || this.hasAttribute("x")) { | |
let cirNo = d3.select(this).attr("class") | |
d3.selectAll(`.${cirNo}`) | |
.style("fill", function(d) { | |
return d.minChildren ? "red" : "orange" | |
}) | |
.style("opacity", .75) | |
} | |
} | |
function showStrike(d) { | |
if (event.type != "click") { | |
tooltip.html("<u><b>Strike</b></u><br>" + "<b>Location</b>: " + d.Location + "<br><b>Date:</b> " + d.Date + "<br><b>Minimum Killed</b>: " + d.minKilled + "<br><b>Minimum Injured</b>: " + d.minInjured + "<br><b>Minimum Children Killed</b>: " + d.minChildren + "<b><br>Type:</b> " + d.Type) | |
var coordinates | |
coordinates = d3.event; | |
var x = coordinates.x | |
var y = coordinates.y | |
tooltip.style("left", x + 30 + "px") | |
tooltip.style("top", y + "px") | |
// this.parentNode.appendChild(this) | |
cirNo = d3.select(this).attr("class") | |
d3.selectAll(`.${cirNo}`) | |
.style("fill", "#00FFFF") | |
.style("opacity", 1) | |
d3.select("#tooltip").transition().duration(250).style("opacity", 1) | |
} else { | |
d3.selectAll("circle").filter(function(d) { | |
if (d.UTC > parseInt(document.getElementsByClassName("slider")["0"].value)) { | |
return true | |
} else { | |
return false | |
} | |
}).attr("r", 0).remove(); | |
svg2.selectAll("rect").filter(function(d) { | |
if (d.UTC > parseInt(document.getElementsByClassName("slider")["0"].value)) { | |
return true | |
} else { | |
return false | |
} | |
}).remove(); | |
} | |
} | |
// LEGEND // | |
var linearSize = d3.scaleLinear().domain([0, 60]).range([2, 18.73656774376801]); | |
svg.append("g") | |
.attr("class", "legendSize") | |
.attr("transform", "translate(50, 175)"); | |
var legendSize = d3.legendSize() | |
.scale(linearSize) | |
.shape('circle') | |
.shapePadding(15) | |
.labelOffset(10) | |
.orient('horizontal'); | |
svg.select(".legendSize") | |
.call(legendSize); | |
d3.selectAll("g.cell text.label").text((d, i) => i * 15) | |
d3.select("g.cell text.label").text(1) | |
d3.selectAll("text.label").attr("transform", (d, i) => `translate(0,${i*5 + 15})`) | |
svg2.append("g").append("svg:image") | |
.attr("x",10) | |
.attr("y",10) | |
.attr("width",30) | |
.attr("height",30) | |
.attr("xlink:href","https://s3.amazonaws.com/aws-website-ngivisualization-md5xp/reseticon.png") | |
.on("mouseover",function(){ d3.select(this).style("opacity",.5)}) | |
.on("mouseleave",function(){ d3.select(this).style("opacity",1)}) | |
.on("click", function(){ | |
d3.select("#slider").valueOf().node().value = 0 | |
animate(); | |
}) | |
$(document).ready(animate); | |
function animate(){ | |
var val; | |
var inte = setInterval(function() { | |
val = d3.select("#slider").valueOf().node().value | |
val = parseInt(val) + 5557600000; | |
d3.select("#slider") | |
.valueOf().node().value = val | |
remapData(); | |
if (val > $('#slider').attr('max')) { | |
clearInterval(inte); | |
} | |
}, 50); | |
} | |
}); | |
</script> | |
</html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
text { | |
text-anchor: middle; | |
font-size: 9px; | |
font-family: "Raleway", sans-serif; | |
} | |
#xAxis g.tick text { | |
text-anchor: middle; | |
} | |
#yAxis g.tick text { | |
text-anchor: end; | |
} | |
g.tick line { | |
stroke: darkgrey; | |
} | |
text.label { | |
font-size: 11px; | |
opacity: 1; | |
fill: black; | |
} | |
path { | |
fill: white; | |
stroke: #D3D3D3; | |
stroke-width: 1; | |
} | |
path.domain { | |
fill: darkgrey; | |
width: 10px; | |
} | |
.svg { | |
background-color: #2A557A; | |
position: absolute; | |
left: 10px; | |
} | |
.svg2 { | |
background-color: #D3D3D3; | |
position: absolute; | |
left: 10px; | |
top: 600px; | |
} | |
#title { | |
font-size: 35px; | |
font-family: "Raleway"; | |
position: absolute; | |
top: 20px; | |
left: 200px; | |
padding: 10px; | |
z-index: 10; | |
background-color: lightgrey; | |
opacity: 1; | |
border-radius: 5px; | |
} | |
.info { | |
font-size: 12px; | |
font-family: "Raleway"; | |
position: absolute; | |
top: 475px; | |
left: 470px; | |
padding: 10px; | |
width: 180px; | |
z-index: 10; | |
border-bottom-left-radius: 5px; | |
border-bottom-right-radius: 5px; | |
color: lightgrey; | |
} | |
.info2 { | |
font-size: 12px; | |
font-family: "Raleway"; | |
position: absolute; | |
top: 400px; | |
left: 470px; | |
width: 170px; | |
height: 150px; | |
padding: 10px; | |
z-index: 10; | |
background-color: lightgrey; | |
opacity: 0.75; | |
} | |
.showing { | |
opacity: 1; | |
position: absolute; | |
text-align: left; | |
padding: 5px; | |
font-family: "Raleway", sans-serif; | |
background: #E4E4E6; | |
font-size: 10px; | |
border: 0; | |
border-radius: 2px; | |
pointer-events: none; | |
line-height: 13px; | |
} | |
#barData { | |
display: block; | |
position: absolute; | |
width: 250px; | |
font-family: "Raleway", sans-serif; | |
font-size: 13px; | |
padding: 10px; | |
left: 20px; | |
border-radius: 5px; | |
text-align: left; | |
width: 225px; | |
left: 50px; | |
top: 100px; | |
height: 45px; | |
background-color: rgb(211,211,211) | |
} | |
.notYemen { | |
fill: #D3D3D3; | |
stroke: darkgrey; | |
} | |
circle { | |
opacity: 0.75; | |
} | |
circle.swatch { | |
fill: red; | |
} | |
rect { | |
opacity: 0.75; | |
} | |
input { | |
position: absolute; | |
top: 630px; | |
left: 95px; | |
writing-mode: bt-lr; | |
outline: 0; | |
} | |
input[type=range] { | |
width: 550px; | |
z-index: 3; | |
background-color: rgba(0,0,0,0); | |
-webkit-appearance: none; | |
position: absolute; | |
} | |
input[type=range]::-webkit-slider-thumb { | |
-webkit-appearance: none; | |
width: 40px; | |
height: 40px; | |
/* background-image: url("https://server238.web-hosting.com:2083/cpsess0082812713/viewer/home%2fharrulrt%2fpublic_html%2fAssets/drone.png");*/ | |
background-image: url("https://s3.amazonaws.com/aws-website-ngivisualization-md5xp/drone2.png"); | |
background-size: 40px; | |
background-repeat: no-repeat; | |
margin-bottom: 10px; | |
} | |
input::-moz-focus-outer { | |
border: 0; | |
} | |
span.warning { | |
color: red; | |
stroke: red; | |
fill: red; | |
} | |
input::-moz-range-track { | |
background-color: rgba(0,0,0,0); | |
} | |
input[type=range]::-moz-range-thumb { | |
width: 40px; | |
height: 40px; | |
/* background-image: url("https://server238.web-hosting.com:2083/cpsess0082812713/viewer/home%2fharrulrt%2fpublic_html%2fAssets/drone.png");*/ | |
background-image: url("https://s3.amazonaws.com/aws-website-ngivisualization-md5xp/drone2.png"); | |
background-size: 40px; | |
background-repeat: no-repeat; | |
background-color: rgba(0,0,0,0); | |
margin-bottom: 10px; | |
border: 0; | |
} | |
.legendSize circle { | |
fill: red; | |
opacity: 1; | |
stroke: lightgrey; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment