ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

修改包含两个 y 轴的图形的属性

2022-01-05 09:07:17  阅读:185  来源: 互联网

标签:right 标尺 yyaxis 修改 ax 图形 left 属性


目录

更改坐标区属性

 更改标尺属性

 使用默认色序指定颜色


        使用 yyaxis 函数可创建一个左右两侧都有 y 轴的 Axes 对象。与 y 轴有关的坐标区属性有两个值。但是,MATLAB® 仅允许访问活动侧的值。例如,如果左侧处于活动状态,则 Axes 对象的 YDir 属性包含左侧 y 轴的方向。同样,如果右侧处于活动状态,则 YDir 属性包含右侧的 y 轴的方向。有一个例外是 YAxis 属性,它包含由两个标尺对象(每个 y 轴各一个)组成的数组。

可以按照下面两种方式中的任何一种,来更改特定 y 轴的外观和行为:

  • 设置活动侧,然后更改 Axes 对象的属性值。

  • 通过 Axes 对象的 YAxis 属性访问标尺对象,然后更改该标尺对象的属性值。

更改坐标区属性

通过设置 Axes 属性修改包含双 y 轴的图形的属性。创建一个包含两个 y 轴的图表,然后绘制数据图。

x = [1 2 3];
y1 = [2 6 4; 3 5 4; 5 7 8];
y2 = 100*[5 5 3; 3 4 7; 5 6 3];
figure
yyaxis left
plot(x,y1)
yyaxis right
plot(x,y2)

如图所示:        

        反转每个 y 轴值递增的方向。使用 yyaxis left 激活左侧,并设置左侧 y 轴的方向。同样,使用 yyaxis right 激活右侧。然后,设置右侧 y 轴的方向。

ax = gca;
yyaxis left
ax.YDir = 'reverse';
yyaxis right
ax.YDir = 'reverse';

        如图所示:

 更改标尺属性

        通过设置标尺属性修改包含双 y 轴的图形的属性。创建一个包含两个 y 轴的图表,然后绘制数据图。

x = [1 2 3];
y1 = [2 6 4; 3 5 4; 5 7 8];
y2 = 100*[5 5 3; 3 4 7; 5 6 3];
figure
yyaxis left
plot(x,y1)
yyaxis right
plot(x,y2)

        如图所示:

        通过设置与每个轴相关联的标尺对象的属性,反转 y 轴值递增的方向。使用 ax.YAxis(1) 表示左侧标尺,ax.YAxis(2) 表示右侧标尺。

ax = gca;
ax.YAxis(1).Direction = 'reverse';
ax.YAxis(2).Direction = 'reverse';

        如图所示:

 使用默认色序指定颜色

        通过更改默认的坐标区色序,为带有两个 y 轴的图表指定颜色。

        创建一个图窗。定义两个 RGB 颜色值,一个值对应左侧,一个值对应右侧。在创建坐标区前,先将默认的坐标区色序更改为这两种颜色。在图窗级别设置默认值,以使新颜色仅影响属于图窗 fig 子级的坐标区。新颜色不影响其他图窗中的坐标区。然后创建图形。

fig = figure;
left_color = [.5 .5 0];
right_color = [0 .5 .5];
set(fig,'defaultAxesColorOrder',[left_color; right_color]);

y = [1 2 3; 4 5 6];
yyaxis left
plot(y)

z = [6 5 4; 3 2 1];
yyaxis right
plot(z)

        如图所示:

标签:right,标尺,yyaxis,修改,ax,图形,left,属性
来源: https://blog.csdn.net/jk_101/article/details/122208864

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有