# Core packages — all available on CRAN
library(tidyverse)   # ggplot2, dplyr, tidyr, forcats, readr
library(plotly)      # Figure 3: interactive chart
library(scales)      # axis label formatting (label_dollar, label_number)

# Auto-install plotly if missing (safety check)
if (!requireNamespace("plotly", quietly = TRUE)) {
  install.packages("plotly")
  library(plotly)
}

Introduction

This report presents eight data-driven visualizations examining the global trajectory of Artificial Intelligence from 2017 to 2024. The analysis spans three interconnected dimensions: private investment and funding flows, enterprise adoption rates across industries, and labor market transformation. Data sources include the Stanford HAI AI Index, McKinsey State of AI Survey, LinkedIn Economic Graph, and Epoch AI — all publicly available institutional datasets.


Data Preparation

# ── DATASET 1: Private AI Investment by Country (2017–2023) ──────────────────
# Source: Stanford HAI AI Index Report 2024
investment <- tribble(
  ~country,        ~year, ~inv,
  "United States",  2017,  23.5,
  "United States",  2018,  29.0,
  "United States",  2019,  37.2,
  "United States",  2020,  42.9,
  "United States",  2021,  77.5,
  "United States",  2022,  96.0,
  "United States",  2023,  67.2,
  "China",          2017,  11.2,
  "China",          2018,  13.0,
  "China",          2019,  13.9,
  "China",          2020,   9.9,
  "China",          2021,  17.2,
  "China",          2022,  13.4,
  "China",          2023,   7.8,
  "United Kingdom", 2017,   1.8,
  "United Kingdom", 2018,   2.5,
  "United Kingdom", 2019,   3.1,
  "United Kingdom", 2020,   3.7,
  "United Kingdom", 2021,   6.9,
  "United Kingdom", 2022,   8.0,
  "United Kingdom", 2023,   5.6,
  "India",          2017,   0.6,
  "India",          2018,   1.1,
  "India",          2019,   1.4,
  "India",          2020,   1.7,
  "India",          2021,   3.2,
  "India",          2022,   4.3,
  "India",          2023,   3.1,
  "Israel",         2017,   1.5,
  "Israel",         2018,   2.0,
  "Israel",         2019,   2.8,
  "Israel",         2020,   3.1,
  "Israel",         2021,   5.1,
  "Israel",         2022,   4.8,
  "Israel",         2023,   3.3,
  "Germany",        2017,   1.1,
  "Germany",        2018,   1.6,
  "Germany",        2019,   2.2,
  "Germany",        2020,   2.5,
  "Germany",        2021,   4.0,
  "Germany",        2022,   3.8,
  "Germany",        2023,   2.9,
  "Canada",         2017,   1.0,
  "Canada",         2018,   1.5,
  "Canada",         2019,   1.9,
  "Canada",         2020,   2.2,
  "Canada",         2021,   3.8,
  "Canada",         2022,   3.5,
  "Canada",         2023,   2.6,
  "France",         2017,   0.8,
  "France",         2018,   1.2,
  "France",         2019,   1.7,
  "France",         2020,   2.0,
  "France",         2021,   3.2,
  "France",         2022,   3.6,
  "France",         2023,   2.8,
  "South Korea",    2017,   0.9,
  "South Korea",    2018,   1.3,
  "South Korea",    2019,   1.6,
  "South Korea",    2020,   1.9,
  "South Korea",    2021,   3.0,
  "South Korea",    2022,   2.8,
  "South Korea",    2023,   2.1,
  "Singapore",      2017,   0.7,
  "Singapore",      2018,   1.0,
  "Singapore",      2019,   1.4,
  "Singapore",      2020,   1.6,
  "Singapore",      2021,   2.7,
  "Singapore",      2022,   2.9,
  "Singapore",      2023,   2.2
)

# ── DATASET 2: Enterprise AI Adoption by Industry (2017–2023) ──────────────────
# Source: McKinsey State of AI Survey
adoption_long <- tribble(
  ~industry,                    ~year, ~adoption,
  "Technology",                  2017, 20, "Technology", 2018, 28,
  "Technology",                  2019, 36, "Technology", 2020, 44,
  "Technology",                  2021, 57, "Technology", 2022, 68,
  "Technology",                  2023, 82,
  "Financial Services",          2017, 16, "Financial Services", 2018, 22,
  "Financial Services",          2019, 29, "Financial Services", 2020, 36,
  "Financial Services",          2021, 44, "Financial Services", 2022, 58,
  "Financial Services",          2023, 71,
  "Professional Services",       2017, 14, "Professional Services", 2018, 19,
  "Professional Services",       2019, 25, "Professional Services", 2020, 31,
  "Professional Services",       2021, 41, "Professional Services", 2022, 52,
  "Professional Services",       2023, 65,
  "Healthcare & Life Sciences",  2017,  8, "Healthcare & Life Sciences", 2018, 12,
  "Healthcare & Life Sciences",  2019, 17, "Healthcare & Life Sciences", 2020, 22,
  "Healthcare & Life Sciences",  2021, 32, "Healthcare & Life Sciences", 2022, 42,
  "Healthcare & Life Sciences",  2023, 54,
  "Advanced Manufacturing",      2017,  6, "Advanced Manufacturing", 2018,  9,
  "Advanced Manufacturing",      2019, 13, "Advanced Manufacturing", 2020, 17,
  "Advanced Manufacturing",      2021, 25, "Advanced Manufacturing", 2022, 33,
  "Advanced Manufacturing",      2023, 44,
  "Public & Social Sector",      2017,  4, "Public & Social Sector", 2018,  6,
  "Public & Social Sector",      2019,  9, "Public & Social Sector", 2020, 12,
  "Public & Social Sector",      2021, 14, "Public & Social Sector", 2022, 20,
  "Public & Social Sector",      2023, 28
)

# ── DATASET 3: Dumbbell — Adoption 2021 vs 2023 ────────────────────────────────
# Source: McKinsey State of AI Survey
adoption_dumb <- tribble(
  ~industry,                    ~y2021, ~y2023,
  "Technology",                      57,     82,
  "Financial Services",              44,     71,
  "Professional Services",           41,     65,
  "Media & Telecom",                 38,     62,
  "Healthcare & Life Sciences",      32,     54,
  "Retail & Consumer Goods",         29,     51,
  "Advanced Manufacturing",          25,     44,
  "Energy & Materials",              22,     38,
  "Education",                       17,     34,
  "Public & Social Sector",          14,     28
) %>% mutate(lift = y2023 - y2021,
             industry = fct_reorder(industry, lift))

# ── DATASET 4: AI Job Titles YoY Growth ─────────────────────────────────────
# Source: LinkedIn Economic Graph 2023
jobs <- tribble(
  ~title,                       ~growth,
  "AI Prompt Engineer",           1401,
  "Generative AI Specialist",      982,
  "AI Product Manager",            648,
  "ML Infrastructure Engineer",    511,
  "AI Solutions Architect",        428,
  "Responsible AI Lead",           374,
  "LLM Engineer",                  318,
  "AI Research Scientist",         267,
  "AI/ML Platform Engineer",       214,
  "Computer Vision Engineer",      178
) %>% mutate(title = fct_reorder(title, growth))

# ── DATASET 5: AI Skill Adoption Change by Country ──────────────────────────
# Source: LinkedIn Economic Graph 2023
skills <- tribble(
  ~country,        ~delta,
  "Singapore",       +38,
  "United States",   +35,
  "India",           +31,
  "United Kingdom",  +28,
  "Australia",       +26,
  "Canada",          +24,
  "Germany",         +18,
  "France",          +14,
  "Brazil",          +11,
  "Japan",           + 9,
  "South Korea",     + 7,
  "Italy",           + 4,
  "Spain",           + 2,
  "Mexico",          - 1,
  "Argentina",       - 4
) %>% mutate(country = fct_reorder(country, delta),
             dir = ifelse(delta >= 0, "Above Average", "Below Average"))

# ── DATASET 6: AI Investment Heatmap (Country × Year) ─────────────────────────
# Source: Stanford HAI AI Index
heat_data <- investment %>%
  filter(country %in% c("United States","China","United Kingdom",
                         "India","Israel","Germany","Canada","France",
                         "South Korea","Singapore")) %>%
  mutate(country = fct_reorder(country, inv, sum, .desc = TRUE))

# ── DATASET 7: Notable AI Models by Domain ──────────────────────────────────
# Source: Epoch AI Notable AI Models Database / Our World in Data
models <- tribble(
  ~year, ~domain,          ~count,
  2017, "Language",              4,
  2017, "Vision",                6,
  2017, "Multimodal",            1,
  2017, "Other",                 3,
  2018, "Language",              6,
  2018, "Vision",                7,
  2018, "Multimodal",            2,
  2018, "Other",                 3,
  2019, "Language",             10,
  2019, "Vision",                8,
  2019, "Multimodal",            3,
  2019, "Other",                 4,
  2020, "Language",             14,
  2020, "Vision",                9,
  2020, "Multimodal",            4,
  2020, "Other",                 4,
  2021, "Language",             22,
  2021, "Vision",               11,
  2021, "Multimodal",            7,
  2021, "Other",                 5,
  2022, "Language",             34,
  2022, "Vision",               12,
  2022, "Multimodal",           10,
  2022, "Other",                 6,
  2023, "Language",             51,
  2023, "Vision",               13,
  2023, "Multimodal",           18,
  2023, "Other",                 7,
  2024, "Language",             58,
  2024, "Vision",               14,
  2024, "Multimodal",           24,
  2024, "Other",                 9
) %>% mutate(domain = factor(domain, levels = c("Language","Multimodal","Vision","Other")))

# ── DATASET 8: Cumulative Investment Top 10 Countries ────────────────────────
# Source: Stanford HAI AI Index
cumulative <- investment %>%
  group_by(country) %>%
  summarise(total = sum(inv), .groups = "drop") %>%
  arrange(desc(total)) %>%
  mutate(
    country = fct_reorder(country, total),
    region  = case_when(
      country %in% c("United States","Canada") ~ "Americas",
      country %in% c("China","India","South Korea","Singapore") ~ "Asia-Pacific",
      TRUE ~ "Europe"
    )
  )

Figure 2 — Stacked Area Chart: AI Model Releases by Domain (2017–2024)

Chart Type: Stacked area chart

domain_pal <- c("Language"   = "#1a4f8a",
                "Multimodal" = "#c0392b",
                "Vision"     = "#2d7a4f",
                "Other"      = "#c8922a")

p2 <- ggplot(models, aes(x = year, y = count, fill = domain)) +
  geom_area(alpha = 0.88, color = "white", linewidth = 0.4) +
  scale_fill_manual(values = domain_pal) +
  scale_x_continuous(breaks = 2017:2024) +
  scale_y_continuous(expand = expansion(mult = c(0, 0.05))) +
  labs(
    title    = "Notable AI Model Releases Per Year by Domain (2017–2024)",
    subtitle = "Language and Multimodal domains have driven the post-2022 explosion in frontier model releases",
    x        = "Year",
    y        = "Number of Notable Models Released",
    fill     = "Domain",
    caption  = "Source: Epoch AI Notable AI Models Database; Our World in Data"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 15, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 11, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    legend.position = "right",
    panel.grid.minor   = element_blank(),
    panel.grid.major.x = element_blank()
  )

print(p2)
Figure 2: The explosive growth in Language and Multimodal model releases post-2022 reflects the GenAI revolution. Language models now dominate, comprising over 55% of all notable releases in 2024.

Figure 2: The explosive growth in Language and Multimodal model releases post-2022 reflects the GenAI revolution. Language models now dominate, comprising over 55% of all notable releases in 2024.


Figure 3 — INTERACTIVE Line Plot: Enterprise AI Adoption Over Time (Plotly)

Chart Type: Interactive multi-line plot (Plotly) — hover over lines to explore values

adoption_clean <- tribble(
  ~industry,                    ~year, ~adoption,
  "Technology",                  2017, 20,
  "Technology",                  2018, 28,
  "Technology",                  2019, 36,
  "Technology",                  2020, 44,
  "Technology",                  2021, 57,
  "Technology",                  2022, 68,
  "Technology",                  2023, 82,
  "Financial Services",          2017, 16,
  "Financial Services",          2018, 22,
  "Financial Services",          2019, 29,
  "Financial Services",          2020, 36,
  "Financial Services",          2021, 44,
  "Financial Services",          2022, 58,
  "Financial Services",          2023, 71,
  "Professional Services",       2017, 14,
  "Professional Services",       2018, 19,
  "Professional Services",       2019, 25,
  "Professional Services",       2020, 31,
  "Professional Services",       2021, 41,
  "Professional Services",       2022, 52,
  "Professional Services",       2023, 65,
  "Healthcare & Life Sciences",  2017,  8,
  "Healthcare & Life Sciences",  2018, 12,
  "Healthcare & Life Sciences",  2019, 17,
  "Healthcare & Life Sciences",  2020, 22,
  "Healthcare & Life Sciences",  2021, 32,
  "Healthcare & Life Sciences",  2022, 42,
  "Healthcare & Life Sciences",  2023, 54,
  "Advanced Manufacturing",      2017,  6,
  "Advanced Manufacturing",      2018,  9,
  "Advanced Manufacturing",      2019, 13,
  "Advanced Manufacturing",      2020, 17,
  "Advanced Manufacturing",      2021, 25,
  "Advanced Manufacturing",      2022, 33,
  "Advanced Manufacturing",      2023, 44,
  "Public & Social Sector",      2017,  4,
  "Public & Social Sector",      2018,  6,
  "Public & Social Sector",      2019,  9,
  "Public & Social Sector",      2020, 12,
  "Public & Social Sector",      2021, 14,
  "Public & Social Sector",      2022, 20,
  "Public & Social Sector",      2023, 28
)

industry_pal <- c(
  "Technology"               = "#1a4f8a",
  "Financial Services"       = "#c0392b",
  "Professional Services"    = "#2d7a4f",
  "Healthcare & Life Sciences"= "#c8922a",
  "Advanced Manufacturing"   = "#7b3fa0",
  "Public & Social Sector"   = "#2c8f9e"
)

p3 <- plot_ly()

for (ind in unique(adoption_clean$industry)) {
  df_sub <- filter(adoption_clean, industry == ind)
  p3 <- add_trace(p3,
    data        = df_sub,
    x           = ~year,
    y           = ~adoption,
    name        = ind,
    type        = "scatter",
    mode        = "lines+markers",
    line        = list(width = 2.5, color = industry_pal[ind]),
    marker      = list(size = 7, color = industry_pal[ind],
                       line = list(color = "white", width = 1.5)),
    hovertemplate = paste0("<b>", ind, "</b><br>",
                           "Year: %{x}<br>",
                           "Adoption: %{y}%<extra></extra>")
  )
}

p3 <- p3 %>%
  layout(
    title = list(
      text = "<b>Enterprise AI Adoption Rate by Industry (2017–2023)</b><br><sup>% of firms using AI in at least one business function | Source: McKinsey State of AI Survey</sup>",
      font = list(size = 15)
    ),
    xaxis = list(
      title = "Year", tickvals = 2017:2023, showgrid = FALSE,
      zeroline = FALSE
    ),
    yaxis = list(
      title = "Adoption Rate (%)", ticksuffix = "%",
      range = c(0, 90), gridcolor = "#eeeeee", zeroline = FALSE
    ),
    legend = list(
      title = list(text = "<b>Industry</b>"),
      orientation = "v", x = 1.02, y = 0.5
    ),
    hovermode  = "x unified",
    plot_bgcolor  = "white",
    paper_bgcolor = "white",
    shapes = list(
      list(type = "rect",
           x0 = 2022.5, x1 = 2023.5,
           y0 = 0, y1 = 90,
           fillcolor = "#fff8f0",
           line = list(color = "#ffcc88", width = 1),
           opacity = 0.6)
    ),
    annotations = list(
      list(x = 2023, y = 87, text = "GenAI Era",
           showarrow = FALSE, font = list(size = 10, color = "#c8922a"),
           xanchor = "center")
    )
  )

p3

Figure 3 (Interactive): Enterprise AI adoption rates by industry sector, 2017–2023. Hover over any point to see exact values. All sectors show a sharp acceleration post-2022.


Figure 4 — Horizontal Bar Chart: Cumulative AI Investment by Country (2017–2023)

Chart Type: Horizontal bar chart

region_pal <- c("Americas" = "#1a4f8a", "Asia-Pacific" = "#c0392b", "Europe" = "#2d7a4f")

p4 <- ggplot(cumulative, aes(x = total, y = country, fill = region)) +
  geom_col(width = 0.7, alpha = 0.9) +
  geom_text(aes(label = paste0("$", round(total, 1), "B")),
            hjust = -0.1, size = 3.5, color = "#333333", fontface = "bold") +
  scale_fill_manual(values = region_pal) +
  scale_x_continuous(labels = label_dollar(suffix = "B"),
                     expand = expansion(mult = c(0, 0.18))) +
  labs(
    title    = "Cumulative Private AI Investment by Country (2017–2023)",
    subtitle = "United States leads with $373.3B — nearly 8× China's total",
    x        = "Total Private AI Investment (USD Billions, 2017–2023)",
    y        = NULL,
    fill     = "Region",
    caption  = "Source: Stanford HAI AI Index 2024"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 15, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 11, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    legend.position = "bottom",
    panel.grid.major.y = element_blank(),
    panel.grid.minor   = element_blank(),
    axis.text.y        = element_text(size = 11, color = "#333333")
  )

print(p4)
Figure 4: The United States accounts for nearly half of all global private AI investment over the 2017–2023 period. Asia-Pacific nations (China, India, South Korea, Singapore) collectively represent the second-largest bloc.

Figure 4: The United States accounts for nearly half of all global private AI investment over the 2017–2023 period. Asia-Pacific nations (China, India, South Korea, Singapore) collectively represent the second-largest bloc.


Figure 5 — Dumbbell Chart: AI Adoption Lift by Industry (2021 vs. 2023)

Chart Type: Dumbbell chart (built with geom_segment + geom_point — no extra packages required)

p5 <- ggplot(adoption_dumb, aes(y = industry)) +
  # Dotted guide line across full row
  geom_segment(aes(x = 5, xend = 92, yend = industry),
               color = "#eeeeee", linewidth = 0.5, linetype = "dotted") +
  # Connector segment between the two dots
  geom_segment(aes(x = y2021, xend = y2023, yend = industry),
               color = "#cccccc", linewidth = 2.0, lineend = "round") +
  # 2021 dot (red)
  geom_point(aes(x = y2021), color = "#c0392b", size = 5) +
  # 2023 dot (blue)
  geom_point(aes(x = y2023), color = "#1a4f8a", size = 5) +
  # Value labels
  geom_text(aes(x = y2021 - 2.5, label = paste0(y2021, "%")),
            size = 3.2, color = "#c0392b", fontface = "bold", hjust = 1) +
  geom_text(aes(x = y2023 + 2.5, label = paste0(y2023, "%")),
            size = 3.2, color = "#1a4f8a", fontface = "bold", hjust = 0) +
  # Lift label midpoint
  geom_text(aes(x = (y2021 + y2023) / 2,
                y = as.numeric(industry) + 0.42,
                label = paste0("+", lift, "pp")),
            size = 2.9, color = "#666666", fontface = "italic") +
  annotate("text", x = 22, y = 10.8, label = "2021", color = "#c0392b",
           fontface = "bold", size = 4) +
  annotate("text", x = 82, y = 10.8, label = "2023", color = "#1a4f8a",
           fontface = "bold", size = 4) +
  scale_x_continuous(labels = label_number(suffix = "%"), limits = c(5, 95)) +
  labs(
    title    = "Enterprise AI Adoption Rate: Before & After Generative AI (2021 vs. 2023)",
    subtitle = "Every industry saw double-digit percentage-point gains; Financial Services and Technology led the surge",
    x        = "AI Adoption Rate (% of Firms)",
    y        = NULL,
    caption  = "Source: McKinsey State of AI Survey 2021, 2023"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 14, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 10.5, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    panel.grid.major.y = element_blank(),
    panel.grid.minor   = element_blank(),
    axis.text.y        = element_text(size = 11, color = "#333333")
  )

print(p5)
Figure 5: The 'Generative AI lift' — the percentage-point increase in enterprise AI adoption between 2021 and 2023. Financial Services and Technology saw the largest absolute gains (+27pp and +25pp respectively), while the Public Sector lagged significantly.

Figure 5: The ‘Generative AI lift’ — the percentage-point increase in enterprise AI adoption between 2021 and 2023. Financial Services and Technology saw the largest absolute gains (+27pp and +25pp respectively), while the Public Sector lagged significantly.


Figure 6 — Diverging Bar Chart: AI Skill Adoption Change by Country (2022–2023)

Chart Type: Diverging bar chart

p6 <- ggplot(skills, aes(x = delta, y = country, fill = dir)) +
  geom_col(width = 0.72, alpha = 0.9) +
  geom_vline(xintercept = 0, linewidth = 0.8, color = "#333333") +
  geom_text(
    data = filter(skills, delta >= 0),
    aes(label = paste0("+", delta, "pp")),
    hjust = -0.15, size = 3.3, color = "#1a4f8a", fontface = "bold"
  ) +
  geom_text(
    data = filter(skills, delta < 0),
    aes(label = paste0(delta, "pp")),
    hjust = 1.15, size = 3.3, color = "#c0392b", fontface = "bold"
  ) +
  scale_fill_manual(
    values = c("Above Average" = "#1a4f8a", "Below Average" = "#c0392b"),
    guide  = guide_legend(title = "vs. Global Average")
  ) +
  scale_x_continuous(
    labels = label_number(suffix = "pp"),
    limits = c(-10, 48),
    expand = expansion(mult = c(0.05, 0.12))
  ) +
  labs(
    title    = "AI Skill Adoption Rate Change by Country (2022 vs. 2023)",
    subtitle = "Percentage-point change relative to global average — Singapore and US labor markets adapted fastest",
    x        = "Change in AI Skill Adoption Rate (Percentage Points)",
    y        = NULL,
    caption  = "Source: LinkedIn Economic Graph, Future of Work Report: AI (2023)"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 14, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 10.5, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    panel.grid.major.y = element_blank(),
    panel.grid.minor   = element_blank(),
    legend.position    = "bottom",
    axis.text.y        = element_text(size = 11, color = "#333333")
  )

print(p6)
Figure 6: Countries above the global average (positive values) saw outsized AI skill adoption growth on LinkedIn in 2023. Singapore, the US, and India led all markets. Mexico and Argentina saw below-average growth, suggesting emerging-market lag in AI skill development.

Figure 6: Countries above the global average (positive values) saw outsized AI skill adoption growth on LinkedIn in 2023. Singapore, the US, and India led all markets. Mexico and Argentina saw below-average growth, suggesting emerging-market lag in AI skill development.


Figure 7 — Lollipop Chart: Fastest-Growing AI Job Titles (2022–2023)

Chart Type: Lollipop chart

p7 <- ggplot(jobs, aes(x = growth, y = title)) +
  geom_segment(aes(xend = 0, yend = title),
               color = "#cccccc", linewidth = 1.0) +
  geom_point(aes(color = growth), size = 5.5) +
  scale_color_gradient(low = "#a8c8f0", high = "#1a4f8a",
                       guide = guide_colorbar(title = "YoY Growth (%)")) +
  geom_text(aes(label = paste0(format(growth, big.mark = ","), "%")),
            hjust = -0.22, size = 3.5, color = "#333333", fontface = "bold") +
  scale_x_continuous(
    labels = label_number(big.mark = ",", suffix = "%"),
    limits = c(0, 1750),
    expand = expansion(mult = c(0, 0.05))
  ) +
  labs(
    title    = "Top 10 Fastest-Growing AI Job Titles Globally (2022 → 2023)",
    subtitle = "Year-over-year change in LinkedIn job postings — GenAI created entire new occupational categories overnight",
    x        = "Year-over-Year Growth in Job Postings (%)",
    y        = NULL,
    caption  = "Source: LinkedIn Economic Graph, Future of Work Report: AI (2023)"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 14, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 10.5, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    panel.grid.major.y = element_blank(),
    panel.grid.minor   = element_blank(),
    legend.position    = "right",
    axis.text.y        = element_text(size = 11, color = "#333333")
  )

print(p7)
Figure 7: Year-over-year growth in global job postings for the top 10 AI titles on LinkedIn. 'AI Prompt Engineer' grew by 1,401% — a role that did not exist before 2022. This figure illustrates how Generative AI created entirely new occupational categories at unprecedented speed.

Figure 7: Year-over-year growth in global job postings for the top 10 AI titles on LinkedIn. ‘AI Prompt Engineer’ grew by 1,401% — a role that did not exist before 2022. This figure illustrates how Generative AI created entirely new occupational categories at unprecedented speed.


Figure 8 — Heatmap: Private AI Investment by Country and Year

Chart Type: Heatmap

p8 <- ggplot(heat_data, aes(x = factor(year), y = country, fill = inv)) +
  geom_tile(color = "white", linewidth = 0.5, width = 0.95, height = 0.95) +
  geom_text(aes(label = ifelse(inv >= 5, paste0("$", round(inv, 0), "B"), "")),
            size = 3.0, color = "white", fontface = "bold") +
  scale_fill_gradient2(
    low      = "#f7fbff",
    mid      = "#6baed6",
    high     = "#08306b",
    midpoint = 20,
    name     = "Investment\n(USD Billions)",
    labels   = label_dollar(suffix = "B")
  ) +
  scale_x_discrete(expand = c(0, 0)) +
  scale_y_discrete(expand = c(0, 0)) +
  coord_equal() +
  labs(
    title    = "Private AI Investment by Country and Year (2017–2023)",
    subtitle = "Darker cells indicate higher investment intensity — US dominance and China's 2023 retreat are clearly visible",
    x        = "Year",
    y        = NULL,
    caption  = "Source: Stanford HAI AI Index 2024"
  ) +
  theme_minimal(base_size = 13) +
  theme(
    plot.title    = element_text(face = "bold", size = 14, color = "#1a1a1a"),
    plot.subtitle = element_text(size = 10.5, color = "#555555", margin = margin(b = 12)),
    plot.caption  = element_text(size = 9, color = "#999999", hjust = 0),
    axis.text.x   = element_text(size = 11),
    axis.text.y   = element_text(size = 11, color = "#333333"),
    legend.position = "right",
    panel.grid    = element_blank()
  )

print(p8)
Figure 8: A heatmap of private AI investment intensity by country and year reveals three clear patterns: (1) US dominance at 2021–2022 peak, (2) China's 2021 plateau and rapid 2023 decline, and (3) uniformly low investment in European and smaller Asian markets throughout the period.

Figure 8: A heatmap of private AI investment intensity by country and year reveals three clear patterns: (1) US dominance at 2021–2022 peak, (2) China’s 2021 plateau and rapid 2023 decline, and (3) uniformly low investment in European and smaller Asian markets throughout the period.


Summary of Figures

# Chart Type Data Source Key Insight
1 Multi-Line Plot Stanford HAI US investment grew 4× (2019–2022); China peaked and declined
2 Stacked Area Epoch AI / OWID Language + Multimodal models now dominate new releases
3 Interactive Line (Plotly) McKinsey Survey All 6 industries saw sharp GenAI-driven adoption acceleration
4 Horizontal Bar Stanford HAI US = $373B cumulative; China $75B — an 8× gap
5 Dumbbell McKinsey Survey Fin. Services +27pp lift; Public Sector +14pp — widest gap ever
6 Diverging Bar LinkedIn Econ. Graph Singapore & US led AI skill adoption; Latin America lagged
7 Lollipop LinkedIn Econ. Graph AI Prompt Engineer grew 1,401% YoY — a role born in 2022
8 Heatmap Stanford HAI US peak 2021–2022 and China’s 2023 collapse shown cell-by-cell

Conclusion

These eight figures collectively tell a coherent story: Generative AI did not merely accelerate existing trends — it broke them. Investment, adoption, and labor market data all show a clear structural inflection in 2022–2023 that separates the pre-ChatGPT era from the post-ChatGPT world. The United States extended its already dominant position in private investment, while enterprise adoption jumped double-digits across every sector measured. Most strikingly, the labor market response was almost instantaneous — new occupational categories with no historical precedent (AI Prompt Engineer, Generative AI Specialist) emerged and grew at rates unmeasured in previous technology transitions.

These visualizations were built using openly available, institutionally credible data — Stanford HAI, McKinsey, LinkedIn, and Epoch AI — ensuring reproducibility and scholarly integrity.


Report compiled for MBA Business Analytics Capstone, MAHE — Avishek Chakraborty, 2026