{"spec_id":"bar-basic","library":"makie","language":"julia","code":"# anyplot.ai\n# bar-basic: Basic Bar Chart\n# Library: makie 0.22.10 | Julia 1.11.9\n# Quality: 90/100 | Created: 2026-05-28\n\nusing CairoMakie\nusing Colors\nusing Random\n\nRandom.seed!(42)\n\n# Theme tokens\nconst THEME       = get(ENV, \"ANYPLOT_THEME\", \"light\")\nconst PAGE_BG     = THEME == \"light\" ? colorant\"#FAF8F1\" : colorant\"#1A1A17\"\nconst INK         = THEME == \"light\" ? colorant\"#1A1A17\" : colorant\"#F0EFE8\"\nconst INK_SOFT    = THEME == \"light\" ? colorant\"#4A4A44\" : colorant\"#B8B7B0\"\nconst IMPRINT_PALETTE = [\n    colorant\"#009E73\", colorant\"#C475FD\", colorant\"#4467A3\", colorant\"#BD8233\",\n    colorant\"#AE3030\", colorant\"#2ABCCD\", colorant\"#954477\", colorant\"#99B314\",\n]\nconst BRAND = IMPRINT_PALETTE[1]\n\n# Data — average monthly household energy consumption by appliance (kWh)\nappliances = [\"Air Conditioning\", \"Water Heater\", \"Washer / Dryer\", \"Refrigerator\", \"Lighting\", \"TV / Electronics\", \"Dishwasher\"]\nmonthly_kwh = [215.0, 185.0, 90.0, 55.0, 45.0, 30.0, 22.0]\n\nn = length(appliances)\n\n# Plot\nfig = Figure(\n    size            = (1600, 900),\n    fontsize        = 14,\n    backgroundcolor = PAGE_BG,\n)\n\nax = Axis(\n    fig[1, 1];\n    title                = \"bar-basic · julia · makie · anyplot.ai\",\n    titlesize            = 20,\n    titlecolor           = INK,\n    xlabel               = \"Appliance\",\n    ylabel               = \"Avg. Monthly Consumption (kWh)\",\n    xlabelcolor          = INK,\n    ylabelcolor          = INK,\n    xlabelsize           = 14,\n    ylabelsize           = 14,\n    xticklabelcolor      = INK_SOFT,\n    yticklabelcolor      = INK_SOFT,\n    xticklabelsize       = 12,\n    yticklabelsize       = 12,\n    xticklabelrotation   = π / 6,\n    xtickcolor           = INK_SOFT,\n    ytickcolor           = INK_SOFT,\n    backgroundcolor      = PAGE_BG,\n    topspinevisible      = false,\n    rightspinevisible    = false,\n    leftspinecolor       = INK_SOFT,\n    bottomspinecolor     = INK_SOFT,\n    xgridvisible         = false,\n    ygridcolor           = RGBAf(INK.r, INK.g, INK.b, 0.15),\n    xminorgridvisible    = false,\n    yminorgridvisible    = false,\n)\n\nbarplot!(ax, 1:n, monthly_kwh;\n    color       = BRAND,\n    strokewidth = 0,\n)\n\nax.xticks = (1:n, appliances)\n\n# Save\nsave(\"plot-$(THEME).png\", fig; px_per_unit = 2)\n"}