概述
matlab数学计算中有时候需要将函数通过图形更加直观的展示给用户的时候就需要使用到二维绘图。绘图常常采用的绘图命令便是 plot ,再添加一些辅助命令使得图形更加的形象直观。
二维绘图中也包括针状图,阶梯图,散点图,条形图,饼图,直方图等等。
plot
- plot(x,y) – 以x为横坐标,y为纵坐标,按照坐标(x,y)的有序排列绘制曲线。
- plot(y) – y为一维实数数组,以1: n 为横坐标,y;为纵坐标,绘制曲线 (n 为y的长度)
- plot(z) – z为一维复数数组,以横轴为实轴、纵轴为虚轴,在复平面上绘制real(zx),imag(zj))的有序集合的图形。
- plot(A) – 绘制矩阵A的列对它的下标的图形。对于 m xn 的矩阵 A ,有n 个含有 m 个元素的数对或n条有m 个点的曲线,且这n条曲线均采用颜色监视器上不同的颜色绘制而成。
- plot(x,A) – 绘制矩阵A对向量x的图形。对于 mxn 的矩阵A和长度为 m 的向量x绘制矩阵 A 的列对向量x的图形;如果x的长度为 n ,则绘制矩阵 A 的行对向量x的图形。向量。可以是行向量,也可以是列向量。
- plot(A,x) – 对矩阵A绘制向量x的图形。对于一个 m xn 的矩阵A 和一个长度为 m的向量x,绘制矩阵 A 的列对向量x的图形;如果x的长度为 n ,则绘制矩阵 A 的行对向量x的图形。向量x 可以是行向量,也可以是列向量。
- plot(A,B) – 绘制矩阵A的行对矩阵B的列的图形。对于A 和 B 都是 m xn 的矩阵将绘制n 条由 m 个有序对连成的曲线。
- plot(x,y,str) – 用字符串str指定的颜色和线型绘制y对x的图形
- plot(x1,y1,str1,x2,y2,str2) – 用字符串str1指定的颜色和线型绘制y1对x1的图形,用字符串str2指定的颜色和线型绘制y2对x2的图形…每组参数值均可以采用上述除复数值外的任何一种形式。strl,str2…可以省略,此时,MATLAB自动为每条曲线选择颜色和线型。
x1=-10:10;
y1=power(x1,2);
z=[1+1i,1+2i,2+3i,3+3i,4+2i,4+1i,3,2,1+1i];
A=[400 2 3 397 396 6 7 393 392 10 11 389 388 14 15 385 384 18 19 381;
21 379 378 24 25 375 374 28 29 371 370 32 33 367 366 36 37 363 362 40;
41 359 358 44 45 355 354 48 49 351 350 52 53 347 346 56 57 343 342 60;
340 62 63 337 336 66 67 333 332 70 71 329 328 74 75 325 324 78 79 321;
320 82 83 317 316 86 87 313 312 90 91 309 308 94 95 305 304 98 99 301;
101 299 298 104 105 295 294 108 109 291 290 112 113 287 286 116 117 283 282 120;
121 279 278 124 125 275 274 128 129 271 270 132 133 267 266 136 137 263 262 140;
260 142 143 257 256 146 147 253 252 150 151 249 248 154 155 245 244 158 159 241;
240 162 163 237 236 166 167 233 232 170 171 229 228 174 175 225 224 178 179 221;
181 219 218 184 185 215 214 188 189 211 210 192 193 207 206 196 197 203 202 200;
201 199 198 204 205 195 194 208 209 191 190 212 213 187 186 216 217 183 182 220;
180 222 223 177 176 226 227 173 172 230 231 169 168 234 235 165 164 238 239 161;
160 242 243 157 156 246 247 153 152 250 251 149 148 254 255 145 144 258 259 141;
261 139 138 264 265 135 134 268 269 131 130 272 273 127 126 276 277 123 122 280;
281 119 118 284 285 115 114 288 289 111 110 292 293 107 106 296 297 103 102 300;
100 302 303 97 96 306 307 93 92 310 311 89 88 314 315 85 84 318 319 81;
80 322 323 77 76 326 327 73 72 330 331 69 68 334 335 65 64 338 339 61;
341 59 58 344 345 55 54 348 349 51 50 352 353 47 46 356 357 43 42 360;
361 39 38 364 365 35 34 368 369 31 30 372 373 27 26 376 377 23 22 380;
20 382 383 17 16 386 387 13 12 390 391 9 8 394 395 5 4 398 399 1];
x=[2,2,2,4,5,6,7,8,9,10,11,12,13,14,15 16 17 18 18 18];
y=[2,2,2,4,5,6,7,8,9,10,11,12,13,14,15 16 17 18 18 18];
B=[1:20;
21:40;
41:60;
61:80;
81:100;
101:120;
121:140;
141:160;
161:180;
181:200;
201:220
221:240;
241:260;
261:280;
281:300;
301:320;
321:340;
341:360;
361:380;
381:400;
];
subplot(3,3,1);plot(x1,y1);grid on;
subplot(3,3,2);plot(y1);
subplot(3,3,3);plot(z);
subplot(3,3,4);plot(A);grid on;
subplot(3,3,5);plot(x,A);
subplot(3,3,6);plot(A,y);
subplot(3,3,7);plot(A,B);
subplot(3,3,8);plot(x1,y1,'o');title("测试标题");xlabel("X");ylabel("Y");grid on;legend("中华人民共和国");
subplot(3,3,9);plot(x1,y1,'green','LineWidth',5); gtext("测试标注文档");
绘图辅助指令
1. subplot
MATLAB允许用户在同一个图形窗口中同时绘制多幅相互独立的子图,这需要应用到subplot指令,其句法格式如下:
- subplot(m,nk):将mxn幅子图中的第k幅图作为当前曲线的绘制图
- subplot(position’,[left bottom width height]):在指定位置生成子图,并作为当前曲线的绘制图。
title(‘text’)
在图形窗口顶端的中间位置输出字符串“text”作为标题
xlabel(‘text’)
在x轴下的中间位置输出字符串“text作为标注。
ylabel(‘text’)
在y轴边上的中间位置输出字符串“text”作为标注。
zlabel(‘text’)
在z轴边上的中间位置输出字符串“text作为标注。
text(x,y,‘text’)
在图形窗口的(x,y)处输出字符串“text”。坐标x和y按照与所绘制图形相同的刻度给出。对于向量x和y,字符串“text”在(xiy)的位置上。如果text”是一个字符串向量,即一个字符矩阵,且与x、y有相同的行数,则第 i行的字符串将在图形窗口的(i;)位置上。
legend(str1,str2,…,pos)
在当前图形上输出图例,并用说明性字符串str1、str2等做标注。
grid
在MATLAB中,grid on命令可以在当前图形的单位标记处添加栅格;而gridoff命令则可以取消栅格的显示,若单独使用grid命令,则可以在on与off状态下交替转换即起到触发的作用。
二维特殊图形函数
函数名 | 说明 | 函数名 | 说明 |
---|---|---|---|
area | 填充绘图 | fplot | 函数绘制 |
bar | 条形图 | hist | 条形直方图 |
barh | 水平条形图 | pareto | Pareto 图 |
comet | 彗星图 | pie | 饼图 |
errorbar | 误差带图 | plotmatrix | 分放矩阵绘制 |
ezplot | 简单绘制函数图 | ribbon | 三维图形的二维条状显示 |
ezpolar | 简单绘制极坐标图 | scatter | 散点图 |
feather | 矢量图 | stem | 离放序列火柴杆状图 |
fill | 多边形填充 | stairs | 阶梯图 |
gplot | 拓扑图 | rose | 极坐标系下的柱状图 |
compass | 与 feather 功能类似的矢量图 | quiver | 向量场 |