如何解决matlab/octave画图legend图例颜色一样的问题?

预期目的:

本意想用legend在画图的时候把对应线段的颜色对应起来,实际按照如下代码运行得不到预期的结果。

Matlab 复制代码
x = [1:10;11:20]

y1 = x.^2;

y2 = 0.5.*x.^3

plot(x,y1,'r',x,y2,'b');

legend('y = x^2','y = x^3')

代码运行结果如下:

原因

是matlab /octave默认legend时,是按照plot的顺序来的,显然这里我们画了20组线,当然前两条都是红色(r)的啦。

解决方法

代码修改如下:

Matlab 复制代码
x = [1:10;11:20]

y1 = x.^2;

y2 = 0.5.*x.^3

axy1 = plot(x,y1,'r');hold on;

axy2 = plot(x,y2,'b');

legend([axy1(1),axy2(1)],'y = x^2','y = x^3')

正确的运行结果:

相关推荐
wearegogog12318 小时前
负荷聚类及其在MATLAB中的实现
matlab·php·聚类
kaikaile199521 小时前
MATLAB实现自适应卡尔曼滤波(AKF)
开发语言·matlab
cici1587421 小时前
基于MATLAB的ADS-B接收机卫星与接收天线初始化实现
算法·matlab
茜茜西西CeCe21 小时前
数字图像处理-图像编码与压缩
人工智能·计算机视觉·matlab·数字图像处理·图像压缩·图像编码
rit84324991 天前
基于MATLAB实现基于距离的离群点检测算法
人工智能·算法·matlab
东巴图1 天前
JavaScript性能优化实战大纲性能优化的核心目标
运维·matlab
Matlab仿真实验室1 天前
基于Matlab实现双目图计算深度图
开发语言·数码相机·matlab·双目图计算深度图
nwsuaf_huasir2 天前
matlab构造带通巴特沃斯滤波器进行滤波
开发语言·matlab
CappuccinoRose3 天前
MATLAB学习文档(二十四)
学习·数学建模·matlab·数据可视化
茜茜西西CeCe3 天前
数字图像处理-图像增强(2)
人工智能·算法·计算机视觉·matlab·数字图像处理·图像增强·陷波滤波器