Azzera filtri
Azzera filtri

how to display correlation coefficient on graph?

39 visualizzazioni (ultimi 30 giorni)
How can I display the correlation coefficient on the top left of the graph like so?
%data
data1 = [9.3 480; 9.7 501; 9.7 540; 9.7 552; 9.9 547; 10.2 622; 10.5 655; 11 701; 10.6 712; 10.6 708];
data2 = [16 9.8; 9 9; 12 9; 15 9.1;10 8.8; 11 8.7;7 8.4; 2 7.8; 5 7.9;1 7.6];
%make 2 figures
figure;
% add first plot in 2 x 1 grid
subplot(1,2,1);
scatter(data1(:,1), data1(:,2), '+', 'MarkerFaceColor', 'k');
ylabel('Engineering Doctorates');
xlabel ('Cheese Consumption');
box 'on'
axis square;
axis([7 12 450 800]);
% add second plot in 2 x 1 grid
subplot(1,2,2);
scatter(data2(:,1), data2(:,2), 'x', 'MarkerFaceColor', 'k');
ylabel('Kentucky Marriage Rate');
xlabel('Fishing Boat Drownings');
box 'on'
axis square;
axis([0 20 7 10]);
%ticks off
set(gca,'Ticklength',[0 0])
%white background
set(gcf,'color','w');
%correlation coefficient
r = corrcoef(data1(:, 1), data1(:, 2));
disp(r(1,2));
  5 Commenti
Minka Califf
Minka Califf il 18 Mag 2018
Works perfectly! Thanks so much!
jonas
jonas il 18 Mag 2018
Modificato: jonas il 18 Mag 2018
Great! I will post an answer so that this question disappears from unanswered. Btw, use the code in the answer if you want less decimals.

Accedi per commentare.

Risposta accettata

jonas
jonas il 18 Mag 2018
The code you attached works perfectly fine, just replace the variable names and add after your own code
tmp=corrcoef(data1(:,1),data1(:,2));
str=sprintf('r= %1.2f',tmp(1,2));
T = text(min(get(gca, 'xlim')), max(get(gca, 'ylim')), str);
set(T, 'fontsize', 14, 'verticalalignment', 'top', 'horizontalalignment', 'left');

Più risposte (0)

Categorie

Scopri di più su 2-D and 3-D Plots in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by