码迷,mamicode.com
首页 > 其他好文 > 详细

matlab使用练习(2)

时间:2015-09-18 23:19:57      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:

data数据

34.62365962451697,78.0246928153624,0
30.28671076822607,43.89499752400101,0
35.84740876993872,72.90219802708364,0
60.18259938620976,86.30855209546826,1
79.0327360507101,75.3443764369103,1
45.08327747668339,56.3163717815305,0
61.10666453684766,96.51142588489624,1
75.02474556738889,46.55401354116538,1
76.09878670226257,87.42056971926803,1
84.43281996120035,43.53339331072109,1

 

ex2.m文件

%% Initialization(灰色代表注释)
clear ; close all; clc       (clear: Clear variables and functions from memory; close: close figure;  clc: Clear command window.)

%% Load Data
% The first two columns contains the exam scores and the third column
% contains the label.

data = load(‘ex2data1.txt‘);
X = data(:, [1, 2]); y = data(:, 3); (取data的第一列至第二列给X,取data的第三列给y)

%% ==================== Part 1: Plotting ====================
% We start the exercise by first plotting the data to understand the
% the problem we are working with.

fprintf([‘Plotting data with + indicating (y = 1) examples and o ‘ ... (...表示与下一行相连)
‘indicating (y = 0) examples.\n‘]);

plotData(X, y); (调用函数plotData(X,y),参见下面的plotData.m)

% Put some labels
hold on; (保持住现有的plot和所有的坐标属性,包括颜色和线条的style)
% Labels and Legend
xlabel(‘Exam 1 score‘) (给x轴加上label)
ylabel(‘Exam 2 score‘) (给y轴加上label)

% Specified in plot order
legend(‘Admitted‘, ‘Not admitted‘) (给两种不同的点的标记加说明)
hold off; (hold 关闭)

fprintf(‘\nProgram paused. Press enter to continue.\n‘);
pause;  (暂停运行,等待用户响应pause causes a procedure to stop and wait for the user to strike any key before continue)

 

plotData.m文件

 

function plotData(X, y)  (在文件的开头应写上新定义的function,文件的名称(plotData.m)中的plotData应与function的名称一至)

%PLOTDATA Plots the data points X and y into a new figure
% PLOTDATA(x,y) plots the data points with + for the positive examples
% and o for the negative examples. X is assumed to be a Mx2 matrix.

 

% Create New Figure
figure; hold on; (figure:创建一个figure 窗口)

 

% ====================== YOUR CODE HERE ======================
% Instructions: Plot the positive and negative examples on a
% 2D plot, using the option ‘k+‘ for the positive
% examples and ‘ko‘ for the negative examples.
%
% Find indices of positive and negative example
pos = find(y==1); neg = find(y==0); (返回所有y==1的点的线性序列(linear indices (如上述data则返回(4,5,7,8,9,10)))

 

%plot example
plot(X(pos,1), X(pos,2), ‘k+‘, ‘LineWidth‘, 2, ‘MarkerSize‘, 7); (将相应序列对应的X矩阵的元素画出(如第4行的第一列的值做为x轴的值,第4行的第二列的值做为y轴的值);  k+表示线的颜色为黑色,形状为+; MarkerSize 表示+形状的大小 )
plot(X(neg,1), X(neg,2), ‘ko‘, ‘MarkerFaceColor‘, ‘y‘, ‘MarkerSize‘, 7); (MarkerFaceColor: 表示填充在o里面的颜色为黄色)

 

% ========================================================================= 

 

hold off;

 

end  (表示plotData(X, y)函数的结束)

 

matlab使用练习(2)

标签:

原文地址:http://www.cnblogs.com/yan2015/p/4820409.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!