Home  

Random  

Nearby  



Log in  



Settings  



Donate  



About Wikipedia  

Disclaimers  



Wikipedia





File:2014 militrary expenditures absolute.svg





File  

Talk  



Language  

Watch  






File

File history

File usage

Global file usage

Metadata
File:2014 militrary expenditures absolute.svg
Size of this PNG preview of this SVG file: 477 × 207 pixels. Other resolutions: 320 × 139 pixels | 640 × 278 pixels | 1,024 × 444 pixels | 1,280 × 555 pixels | 2,560 × 1,111 pixels.

Original file(SVG file, nominally 477 × 207 pixels, file size: 1.65 MB)





Summary

Description
Source Own work
Author Pipping

Licensing

I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
  • Under the following conditions:

    Created with the following piece of code:

    library(magrittr)
    
    selectedYear <- 2014
    
    getWorldBankData <- function(indicatorCode, indicatorName) {
        baseName <- paste('API', indicatorCode, 'DS2_en_csv_v2', sep='_')
        ## Download zipfile if necessary
        zipfile <- paste(baseName, 'zip', sep='.')
        if(!file.exists(zipfile)) {
            zipurl <- paste(paste('http://api.worldbank.org/v2/en/indicator',
                                  indicatorCode, sep='/'),
                            'downloadformat=csv', sep='?')
            download.file(zipurl, zipfile)
        }
        csvfile <- paste(baseName, 'csv', sep='.')
        ## This produces a warning because of the trailing commas. Safe to ignore.
        readr::read_csv(unz(zipfile, csvfile), skip=4,
                        col_types = list(`Indicator Name` = readr::col_character(),
                                         `Indicator Code` = readr::col_character(),
                                         `Country Name` = readr::col_character(),
                                         `Country Code` = readr::col_character(),
                                         .default = readr::col_double())) %>%
            dplyr::select(-c(`Indicator Name`, `Indicator Code`, `Country Name`))
    }
    
    ## Obtain and merge World Bank data
    worldBankData <-
        dplyr::left_join(
                   getWorldBankData('MS.MIL.XPND.GD.ZS') %>%
                   tidyr::gather(-`Country Code`, convert=TRUE,
                                 key='Year', value=`Military expenditure (% of GDP)`,
                                 na.rm = TRUE),
                   getWorldBankData('NY.GDP.MKTP.CD') %>%
                   tidyr::gather(-`Country Code`, convert=TRUE,
                                 key='Year', value=`GDP (current US$)`,
                                 na.rm = TRUE)) %>%
        dplyr::mutate(`Military expenditure (current $US)` =
                          `Military expenditure (% of GDP)`*`GDP (current US$)`/100) %>%
        dplyr::filter(Year == selectedYear) %>%
        dplyr::mutate(Year = NULL)
    
    ## Plotting: Obtain Geographic data
    mapData <- tibble::as.tibble(ggplot2::map_data("world")) %>%
        dplyr::mutate(`Country Code` =
                          countrycode::countrycode(region, "country.name", "iso3c"),
                      ## This produces a warning but I do not see how we could do better
                      ## since we started with fuzzy names.
                      region = NULL, subregion = NULL)
    
    combinedData <- dplyr::left_join(mapData, worldBankData)
    
    ## The default out-of-bounds function `censor` replaces values outside
    ## the range with NA. Since we have properly labelled the legend, we can
    ## project them onto the boundary instead
    clamp <- function(x, range = c(0, 1)) {
        lower <- range[1]
        upper <- range[2]
        ifelse(x > lower, ifelse(x < upper, x, upper), lower)
    }
    
    ggplot2::ggplot(data = combinedData, ggplot2::aes(long,lat)) +
        ggplot2::geom_polygon(ggplot2::aes(group = group,
                                           fill  = `Military expenditure (current $US)`),
                              color = '#606060', lwd=0.05) +
        ggplot2::scale_fill_gradientn(colours= rev(viridis::magma(256, alpha = 0.5)),
                                      name   = "Million\nUS Dollars",
                                      trans  = "log",
                                      oob    = clamp,
                                      breaks = c(1e7,1e8,1e9,1e10,1e11,1e12),
                                      labels = c('\u2264 10', '100', '1K',
                                                 '10K', '100K', '\u2265 1M'),
                                      limits = c(1e7,1e12)) +
        ggplot2::coord_fixed() +
        ggplot2::theme_bw() +
        ggplot2::theme(plot.title = ggplot2::element_text(hjust = 0.5),
              axis.title = ggplot2::element_blank(),
              axis.text = ggplot2::element_blank(),
              axis.ticks = ggplot2::element_blank(),
              panel.grid.major = ggplot2::element_blank(),
              panel.grid.minor = ggplot2::element_blank(),
              panel.border = ggplot2::element_blank(),
              panel.background = ggplot2::element_blank()) +
        ggplot2::labs(title = paste("Countries by military expenditures in",
                                    selectedYear))
    
    ggplot2::ggsave(paste(selectedYear, 'militrary_expenditures_absolute.svg', sep='_'),
                    height=100, units='mm')
    

    Captions

    Add a one-line explanation of what this file represents

    Items portrayed in this file

    depicts

    some value

    image/svg+xml

    ded5f4862a17bb1a373b0654356ebcf6fe8e67c5

    1,596,728 byte

    288 pixel

    512 pixel

    File history



    Click on a date/time to view the file as it appeared at that time.
    Date/TimeThumbnailDimensionsUserComment
    current17:50, 22 June 2024Thumbnail for version as of 17:50, 22 June 2024477 × 207 (1.65 MB)HohumCropped to subject
    14:30, 20 May 2017Thumbnail for version as of 14:30, 20 May 2017512 × 288 (1.52 MB)Pippingredo with dplyr
    12:12, 13 May 2017Thumbnail for version as of 12:12, 13 May 2017512 × 256 (1.51 MB)PippingHandle truncation of the data range better: We distinguish between 0 and no data, but any existing datum below 10M USD is coloured the same way and all data above 1T USD are coloured the same way. The legend makes this clear.
    08:55, 13 May 2017Thumbnail for version as of 08:55, 13 May 2017512 × 256 (1.51 MB)PippingCompletely redone. The former was in local currency (so that comparisons from country to country made absolutely no sense). Now everything is in current US dollars.
    22:32, 11 May 2017Thumbnail for version as of 22:32, 11 May 2017512 × 256 (1.5 MB)PippingFixed min/max value for colors that kept anything below 1,000,000,000 US dollars from having a colour (now: Anything above 1,000,000 US dollars has a colour).
    21:30, 11 May 2017Thumbnail for version as of 21:30, 11 May 2017512 × 256 (1.51 MB)Pipping{{Information |Description ={{en|1=English: Based on the Worldbank data from http://data.worldbank.org/indicator/MS.MIL.XPND.CN This is a candidate for replacing/augmenting https://commons.wikimedia.org/wiki/File:Countries_by_Military_expenditures_(...



    The following pages on the English Wikipedia use this file (pages on other projects are not listed):

    Military

    Talk:List of countries with highest military expenditures/Archive 4

    User:Retired User 44052/sandbox2


    Global file usage


    The following other wikis use this file:

    Usage on bg.wikipedia.org

    Списък на страните по военни разходи


    Usage on ca.wikipedia.org

    Exèrcit


    Usage on eu.wikipedia.org

    Armada


    Usage on sr.wikipedia.org

    Списак држава по војном буџету


    Usage on th.wikipedia.org




    Usage on uk.wikipedia.org

    Список країн за військовими витратами



    Metadata

    This file contains additional information, probably added from the digital camera or scanner used to create or digitize it.

    If the file has been modified from its original state, some details may not fully reflect the modified file.


    Retrieved from "https://en.wikipedia.org/wiki/File:2014_militrary_expenditures_absolute.svg"
     




    Languages

     



    This page is not available in other languages.
     

    Wikipedia




    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Terms of Use

    Desktop