主要内容

matlab.graphics.chartcontainer.mixin.Legend类

包:matlab.graphics.chartcontainer.mixin

为图表容器子类添加图例支持

描述

matlab.graphics.chartcontainer.mixin.Legend是否为继承的图表添加图例支持的类matlab.graphics.chartcontainer.ChartContainer.通过从这个类继承,您可以在图表中显示一个图例。用户可以在图菜单栏或图工具栏中选择选项来显示或隐藏图例。

使用此语法为图表启用图例支持:

classdef MyChart < matlab.graphics.chartcontainer.ChartContainer &…matlab.graphics.chartcontainer.mixin.Legend……结束

matlab.graphics.chartcontainer.mixin.Legend类是一个处理类。

类属性

摘要
真正的
HandleCompatible
真正的

有关类属性的信息,请参见类属性

属性

全部展开

图例可见性,指定为“上”“关闭”,或作为数字或逻辑1真正的)或0).的值“上”等于真正的,“关闭”等于.因此,您可以将此属性的值用作逻辑值。该值存储为类型的开/关逻辑值matlab.lang.OnOffSwitchState

当此属性设置为“上”,图示在图表中可见。

属性:

GetAccess
公共
SetAccess
公共
依赖
真正的
NonCopyable
真正的

方法

全部展开

例子

全部折叠

定义一个SmoothLegendPlot类,该类使用带有平滑版本的蓝色虚线绘制一组数据。

要定义类,创建一个名为SmoothLegendPlot.m它包含以下代码。的设置方法执行以下任务:

  • 创建了两个具有适当的DisplayName要在图例中显示的值

  • 使图例可见LegendVisible财产“上”

  • 得到了传说对象,并自定义文本颜色、框边颜色和框线宽度

classdefSmoothLegendPlot < matlab.graphics.chartcontainer.ChartContainer &...matlab.graphics.chartcontainer.mixin.Legend属性XData(: 1)增加一倍= NaN YData(: 1)增加一倍= NaN SmoothColor(1,3) double {mustBeGreaterThanOrEqual(SmoothColor,0),...mustBeLessThanOrEqual (SmoothColor, 1)}=[0.9290 0.6940 0.1250]平滑宽度(1,1)的两倍= 2结束属性(访问= private,Transient,NonCopyable(1,1) matlab.graphics.chart.primitive.LineSmoothLine(1,1) matlab.graphics.chart.primitive.Line结束方法(访问=受保护)函数setup(obj) ax = getAxes(obj);创建行对象。定义线条样式和图例名称。obj。OriginalLine = plot(ax,NaN,NaN,“线型”“:”...“DisplayName的”“原始”);(ax,“上”obj。SmoothLine = plot(ax,NaN,NaN,...“DisplayName的”“顺利”);%使图例可见obj。LegendVisible =“上”获取图例并设置文本颜色、边缘颜色和行宽lgd = getLegend(obj);乐金显示器。TextColor = [.]3 .3 .3];乐金显示器。EdgeColor = [.]8 .8 .8];乐金显示器。LineWidth = .7;(ax,“关闭”结束函数更新(obj)%更新线路数据obj. origineline . xdata = obj.XData;obj. originalign . ydata = obj.YData;obj.SmoothLine.XData = obj.XData;obj. smoothline . ydata = createSmoothData(obj);调整平滑线外观obj.SmoothWidth . linewidth = obj.SmoothWidth;obj.SmoothLine.Color = obj.SmoothColor;结束函数sm = createSmoothData(obj)计算平滑数据V = ones(1,10)*0.1;Sm = conv(obj。YData v,“相同”);结束结束结束

接下来,创建一对x而且y向量。情节x而且y通过调用SmoothLegendPlot构造函数方法继承自ChartContainer类。指定“XData”而且“YData”名称-值对参数并返回图表对象为c

X = 1:1:100;Y = 10*sin(x /5)+8*sin(10.*x+0.5);c = SmoothLegendPlot(“XData”, x,“YData”, y);

使用c更改平滑线的颜色为红色。注意,图例还显示了新的行颜色。

c.SmoothColor = [1 0 0];

版本历史

在R2019b中引入

Baidu
map