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

如何在GNUPlot中绘制简单线段?

问题原因

你当前写法不生效的核心原因是连续执行两次plot命令时,第二次调用会清空画布覆盖第一次的绘图结果,你定义线段数据块的语法本身没有错误。

正确实现方式

方法1:保留你原有内联数据块的写法

仅需要将两个绘图逻辑合并到同一句plot命令中,用逗号分隔不同绘图项即可:

$DATA << EOD
# 你原来的其他数据内容
.... other data
EOD
$LS << EOL
0   0
0   1
EOL

# 合并绘图命令,\ 用于换行提高可读性
plot $DATA using 1:2:3 with points, \
     $LS using 1:2 with lines

你还可以按需给线段设置样式,比如加linewidth 2 linecolor "blue"调整线宽和颜色。

方法2:更简洁的直接内嵌线段写法

如果不想额外定义$LS数据块,也可以直接在plot语句中使用特殊文件名'-'录入线段数据:

plot $DATA using 1:2:3 with points, \
     '-' using 1:2 with lines
# 下面直接放线段的坐标点
0 0
0 1
# 输入完用e结束当前数据段
e

注意事项

如果修改后线段还是没显示,检查你当前脚本的坐标轴范围是否覆盖了线段的坐标:如果原有$DATA的x值都远大于0,gnuplot会自动把x轴范围设置为匹配原有数据,会把x=0的部分裁掉,此时手动设置x轴范围即可:

# 范围根据你实际数据调整,确保包含0
set xrange [-0.1: 你的原有数据最大x值]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 23:06:05