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

Matlab 2016a中如何单独设置lsline的X轴显示范围?

在Matlab 2016a中单独控制lsline回归线的显示范围

我太懂这个烦恼了——lsline确实会默认跟着当前坐标轴的范围来画完整的回归线,完全不管对应散点的实际数据区间,在2016a版本里也确实没有直接设置范围的属性。不过咱们可以换个思路:放弃依赖lsline自动生成,手动对每个散点组拟合回归,然后自己绘制限定范围的线条,这样就能精准控制每条线的起止点了。

方法一:手动拟合+绘制限定范围的回归线

这是最直接可控的方式,步骤很清晰:

  1. 对每个散点组,用polyfit计算线性回归的斜率和截距(线性回归就是一次多项式拟合)
  2. 获取当前组x数据的最小和最大值,作为回归线的起止范围
  3. 生成该范围内的x序列,计算对应的y值,用plot绘制线条,颜色和散点保持一致

给你修改后的完整代码示例:

% 假设你已经定义了myColours颜色矩阵
myColours = [0.1 0.3 0.5; 0.7 0.2 0.4]; % 示例颜色,可替换成你的实际颜色

hold on; % 开启绘图保持,确保所有图都画在同一窗口
for i=1:2
    % 替换成你的实际x、y数据
    x = rand(50,1)*0.3; % 示例x,范围0~0.3
    y = 1.8*x + 0.4 + randn(50,1)*0.1; % 示例y,带点噪声
    
    % 绘制散点
    scatter(x, y, 50, 'MarkerFaceColor', myColours(i, :));
    
    % 拟合线性回归:p(1)是斜率,p(2)是截距
    p = polyfit(x, y, 1);
    % 确定当前组的x范围
    x_min = min(x);
    x_max = max(x);
    % 生成回归线的x序列(100个点足够平滑)
    x_line = linspace(x_min, x_max, 100);
    % 计算对应的y值
    y_line = p(1)*x_line + p(2);
    
    % 绘制限定范围的回归线,颜色和散点匹配
    plot(x_line, y_line, 'Color', myColours(i, :), 'LineWidth', 1.5);
end
hold off;

方法二:修改已生成的lsline线条(如果已经用了lsline)

如果你已经用lsline生成了线条,也可以事后修改每条线的XData和YData,但前提是你要保存每个散点组的x、y数据:

% 先保存每个组的x、y数据和x范围
x_groups = cell(2,1);
y_groups = cell(2,1);
x_ranges = zeros(2,2);

hold on;
for i=1:2
    x_groups{i} = ...; % 你的实际x数据
    y_groups{i} = ...; % 你的实际y数据
    scatter(x_groups{i}, y_groups{i}, 50, 'MarkerFaceColor', myColours(i, :));
    x_ranges(i,:) = [min(x_groups{i}), max(x_groups{i})];
end
% 生成默认回归线
h_lines = lsline;

% 逐个修改每条回归线的范围
for i=1:length(h_lines)
    % 重新拟合当前组的回归参数
    p = polyfit(x_groups{i}, y_groups{i}, 1);
    x_min = x_ranges(i,1);
    x_max = x_ranges(i,2);
    x_line = linspace(x_min, x_max, 100);
    y_line = p(1)*x_line + p(2);
    % 更新线条的X和Y数据
    set(h_lines(i), 'XData', x_line, 'YData', y_line);
    % 顺便把线条颜色和散点匹配(lsline可能自动选色)
    set(h_lines(i), 'Color', myColours(i, :));
end
hold off;

两种方法里,我更推荐第一种——手动拟合绘制,不仅能精准控制范围,还能保证线条颜色和散点完全一致,避免lsline自动选色可能带来的混乱。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.12 05:08:14