折线图生成器
每行输入「类目,数值」(类目可省略),点「计算」画出带数据点的折线图;自动给出点数、最大/最小、首末变化量与变化率、升降趋势。
折线图用来观察数值随时间的变化趋势,适合日活、销量、体重、温度这类有先后顺序的数据。与柱状图的区别在于:柱状图强调各类目谁大谁小,折线图强调同一序列怎么走 —— 只有带先后顺序的数据才适合连线。
工具同时给出首末变化量、变化率与升降趋势判定(变化率绝对值小于 0.1% 记为持平);首点为 0 时无法计算相对变化率,改按末点正负判断。需要注意趋势判定只描述首末两点,中间波动要靠「较前一点」列逐段看,不能只看结论。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 每行填「类目,数值」;类目可省略(自动编号),按输入顺序从左到右连线。
- 点「计算」出图,数据点会画在折线上便于定位。
- 看统计卡的趋势与首末变化,再对照「较前一点」列检查中间波动。
- 确认后右键另存图片,或截取图表区域放进周报。
计算原理与示例
数据怎么填
每行一条数据,格式「类目,数值」;类目可省略(自动按 1、2、3…编号),最多 50 行,按输入顺序从左到右连线。
趋势怎么判
「首末变化」= 末点 − 首点,括号内是相对首点的变化率;趋势按变化率判定:|变化率| < 0.1% 记「持平」,否则升/降;首点为 0 时按末点正负判。
支持负值吗
y 轴范围自动适配:有负值时下限取负的整数刻度,刻度同样取「1/2/5×10ⁿ」档位。
代码示例
JavaScript 用 ECharts 画折线图
const chart = echarts.init(document.getElementById('chart'));
chart.setOption({
tooltip: { trigger: 'axis' },
xAxis: { type: 'category', boundaryGap: false, data: ['周一', '周二', '周三'] },
yAxis: { type: 'value' },
series: [{
type: 'line',
smooth: false,
symbolSize: 6, // 数据点可见,便于定位异常值
data: [820, 932, 901],
}],
});
Shell 命令行算变化量与变化率
# 逐行打印较前一行的变化量
awk -F, 'NR==1{prev=$2; print $0 ",变化"; next} {printf "%s,%+d\n", $0, $2-prev; prev=$2}' data.csv
# 首末变化率
awk -F, 'NR==1{first=$2} {last=$2} END{printf "首末变化率 %.2f%%\n", (last-first)/first*100}' data.csv
常见问题
适合什么数据?
按时间或顺序排列的序列,如月度销量、体重记录、温度变化;类目间无顺序关系的对比请用柱状图。
折线图支持负值吗?
支持。y 轴下限会自动下探到负的整数刻度(如最低 -15 → 下限 -20),正负都能画。
「持平」的判定标准是什么?
首末变化率的绝对值小于 0.1% 记为持平;这是为了避免浮点尾差把微小波动判成趋势。
首点是 0 时变化率怎么算?
变化率除以 0 无意义,此时只给变化量,趋势按末点正负判定:正数记「上升」,负数记「下降」,0 记「持平」。
画折线图需要联网吗?
不会。解析、统计与绘制全部在浏览器本地完成,断网可用。
「较前一点」列是什么?
明细表里每点减去前一点的差值,正数带 + 号;第一点没有前点,显示「—」。
能画多条线吗?
当前版本一次画一条。多组数据可分别生成多张图对比,或把差值算好再画。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。