Main Science and Technology Indicators (MSTI database)
Data - OECD
Info
Last observation: Annual: 2025 (N = 439)
First observation: Annual: 1981 (N = 1,960)
Last data update: 26 avr 2026, 19:32. Last compile: 27 avr 2026, 02:29
Structure
High Technology Exports
China, United States
Linear
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
select_if(~ n_distinct(.) > 1) %>%
select(MEASURE, Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1200, 100),
labels = dollar_format(su = " Bn")) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
Log
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
select(MEASURE, Ref_area = Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
China, United States, Germany, France
Linear
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA", "DEU", "FRA"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
select(MEASURE, Ref_area = Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 1200, 100),
labels = dollar_format(su = " Bn")) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
Log
All
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA", "DEU", "FRA", "EU27_2020"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
select(MEASURE, REF_AREA, Ref_area = Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
mutate(Ref_area = ifelse(REF_AREA == "EU27_2020", "Europe", Ref_area)) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
mutate(color = ifelse(REF_AREA == "USA", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Technology Exports = Aerospace + \nComputer, electronic and optical industry + Pharmaceutical") + xlab("")
1995-
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA", "DEU", "FRA"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
select(MEASURE, REF_AREA, Ref_area = Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
mutate(color = ifelse(REF_AREA %in% c("CHN", "USA"), color2, color)) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Bn", a = 1)) +
ylab("High Tech. Exports = Aerospace + Computer, \nelectronic and optical industry + Pharmaceutical") + xlab("")
1995-
Code
MSTI %>%
filter(MEASURE %in% c("TD_EAERO", "TD_ECOMP", "TD_EDRUG"),
REF_AREA %in% c("CHN", "USA", "DEU", "FRA"),
UNIT_MEASURE == "USD") %>%
mutate(Ref_area = ifelse(REF_AREA == "CHN", "China", Ref_area)) %>%
year_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
select(MEASURE, REF_AREA, Ref_area = Ref_area, date, obsValue) %>%
spread(MEASURE, obsValue) %>%
mutate(obsValue = (TD_EAERO + TD_ECOMP + TD_EDRUG)/1000) %>%
left_join(colors, by = c("Ref_area" = "country")) %>%
mutate(color = ifelse(REF_AREA %in% c("USA"), color2, color)) %>%
ggplot + geom_line(aes(x = date, y = obsValue, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = seq(1920, 2100, 5) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = c(1, 2, 3, 5, 8, 10, 20, 30, 50, 80, 100, 200, 300, 500, 800),
labels = dollar_format(su = " Mds", a = 1)) +
ylab("Exportations de Haute Technologie = Aéronautique, \nInformatique, Electronique, Optique, Pharmacie") + xlab("")