You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Julia基于给定薪资数据集制作清晰有效的可视化图表?

Julia数据科学薪资数据集可视化优化指南

一、数据集适配性

你参考的多维度薪资分布图表(按年份、职位分类的箱线图)完全可以用当前数据集实现。你的数据包含job_title(职位)、salary_in_usd(薪资)、work_year(年份)和experience_level(经验等级),刚好覆盖这类图表需要的分类维度、数值指标和分组维度。

二、推荐绘图包

  • VegaLite.jl:你已在使用的声明式绘图库,和InMemoryDatasets兼容性极佳,可快速生成交互式、出版级图表,语法简洁易上手。
  • Plots.jl + StatsPlots.jl:生态完善,支持多种绘图后端(GR、Plotly等),StatsPlots专门提供箱线图、小提琴图等统计类图表,适合快速数据探索。
  • Makie.jl:高性能、定制化极强的绘图库,支持静态/交互式图表,适合需要精细化调整的复杂可视化场景。

三、具体实现示例

用VegaLite制作多维度箱线图

using VegaLite, InMemoryDatasets

# 简化职位分类,避免X轴拥挤
transform!(new, :job_title, by = x -> begin
    occursin("Scientist", x) && return "Data Scientist"
    occursin("Engineer", x) && return "Data Engineer"
    occursin("Analyst", x) && return "Data Analyst"
    occursin("Manager", x) && return "Data Manager"
    return "Other"
end, renamecols=:simplified_job)

# 绘制分年份、分职位的薪资箱线图,按经验等级着色
new |> @vlplot(
    mark=:boxplot,
    x=:simplified_job,
    y=:salary_in_usd,
    column=:work_year,
    color=:experience_level,
    title="Data Science Salaries by Job, Year & Experience",
    width=220,
    height=450,
    config={
        boxplot={extent=1.5}, # 控制箱线图须的范围,过滤极端值
        axis={labelFontSize=10, titleFontSize=12},
        title={fontSize=14}
    }
)

用StatsPlots制作静态多面板箱线图

using Plots, StatsPlots

# 简化职位分类
simplified_jobs = map(new.job_title) do x
    occursin("Scientist", x) ? "Data Scientist" :
    occursin("Engineer", x) ? "Data Engineer" :
    occursin("Analyst", x) ? "Data Analyst" :
    occursin("Manager", x) ? "Data Manager" : "Other"
end

# 按年份分面板,绘制箱线图
@df new boxplot(
    simplified_jobs,
    :salary_in_usd,
    group=:experience_level,
    layout=length(unique(new.work_year)),
    title=["Salaries in $(year)" for year in sort(unique(new.work_year))],
    xlabel="Job Title",
    ylabel="Salary (USD)",
    legend=:topright,
    size=(1100, 650),
    palette=:viridis
)

四、可视化优化要点

  • 精简分类维度:原数据集job_title细分过多,直接绘图会导致X轴拥挤,建议合并相似职位(如示例中的简化处理),或只保留样本量≥20的核心职位。
  • 聚焦核心对比:保留work_year、simplified_job、experience_level三个核心维度,避免过多信息干扰。
  • 细节调整:
    • 设置箱线图须的合理范围(如1.5倍四分位距),过滤极端值;
    • 调整坐标轴标签、标题的字体大小,提升可读性;
    • 用颜色区分经验等级,强化分组对比;
    • 若做交互式图表,添加悬停提示,显示中位数、四分位数等具体统计值。

内容的提问来源于stack exchange,提问作者hahaha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 06:05:24