matlab双y轴作图、散点图连线、图例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
% 输入x,y1,y2
x=[1 2 3 4 4.5];
y1=[1.08 2.18 3.19 4.21 4.71];
y2=[0.08 0.18 0.19 0.21 0.21];
% 绘制左边y轴图形数据
yyaxis left
% 用plot函数绘制图像
% 'b--o' 是线条和标记的样式说明符:'b' 表示蓝色;'--' 表示虚线;'o' 表示圆圈标记。
% 'LineWidth', 2 设置线条的宽度为 2 个单位。
% 'MarkerSize', 6 设置标记的大小为 6 个单位。
% 'MarkerEdgeColor', 'k' 设置标记边缘的颜色为黑色。
% 'MarkerFaceColor', 'b' 设置标记填充的颜色为蓝色。
plot(x, y1,'b--o', 'LineWidth',2, 'MarkerSize',6, 'MarkerEdgeColor', 'k', 'MarkerFaceColor','b');
% 保留已绘制的所有图形,并继续作图。
hold on
% 写左边y轴的轴标题
ylabel('I_{标准}/mA')
% axis 函数用于设置当前图形窗口的坐标轴范围。当前图形的 x 轴范围设置为从1到5,y轴范围设置为从0到6。
axis([1 5 0 6]);
% set 函数用于设置图形对象的属性。当前图形窗口的 Y 轴刻度设置为0,1,2,3,4和5。
set(gca,'YTick',[0 1 2 3 4 5 ]);
% 绘制左边y轴图形数据
yyaxis right
% 与上面的类似,除了线条改为紫红色与点线,标记填充颜色为红色。
plot(x, y2,'m:^', 'LineWidth',2, 'MarkerSize',6, 'MarkerEdgeColor', 'k', 'MarkerFaceColor','r');
% 写右边y轴轴标题
ylabel('ΔI/mA')
% 写x轴标题
xlabel('I_{改装}/mA')
% 写图标题
title('附图1 5mA量程电流表的校准曲线')
% 写图例
legend('I_{标准}', '△I');
% x轴范围为1到5,y轴为0到。
axis([1 5 0 1]);
% y轴刻度为0到1
set(gca,'YTick',[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1]);
% 图片大小为长14.5cm高12cm
set(gcf, 'Units', 'centimeters', 'Position', [6, 6, 14.5, 12]);
% 画网格
grid on

结果为

补充1

matlab支持部分 TeX 标记,也可以可以改用 LaTeX 标记。通过这个我们可以写上下标与特殊符号。

图文本中的希腊字母和特殊字符 - MATLAB & Simulink - MathWorks 中国

常用的如下

修饰符 描述 示例
^{ } 上标 ‘text^{superscript}’
_{ } 下标 ‘text_{subscript}’
\bf 粗体 ‘\bf text’
\it 斜体 ‘\it text’
补充2

matlab中改变线型与标记

指定绘图中的线和标记的外观 - MATLAB & Simulink - MathWorks 中国

常用的如下:

线型 描述 表示的线条
“-” 实线
“–” 虚线
“:” 点线
“-.” 点划线
标记 描述 生成的标记
“o” 圆圈
“+” 加号
“*” 星号
“^” 上三角
补充3

绘制线条时设置颜色

1
2
3
4
5
6
% 使用颜色名称 
plot(x, y, 'Color', 'red');
% 使用 RGB 三元组
plot(x, y, 'Color', [1 0 0]); % 红色
% 使用十六进制颜色代码
plot(x, y, 'Color', '#FF0000'); % 红色

常用颜色

中文名称 颜色名称 缩写
红色 red r
绿色 green g
蓝色 blue b
黄色 yellow y
蓝绿色 cyan c
紫红色 magenta m
黑色 black b
白色 white w