2017-07-20 6 views
1

Ich habe eine Biplot in Matlab erstelltWie setze ich einen Titel auf ein Biplot in Matlab?

biplot = biplot(wcoeff(:,1:2),'Scores',score(:,1:2),'VarLabels',drugsFixed,'ObsLabels',cellLines,'MarkerSize',15) 

Es sieht gut aus, aber ich würde gerne einen Titel hinzuzufügen. Das Hinzufügen von 'title' zu dem Biplot-Funktionsaufruf führt zu einem Fehler. Das "Biplot" -Objekt hat keine Kinder, die so aussehen, als hätten sie den Titel-Handle. Vorschläge?

+1

Haben Sie versucht, die Funktion ['title'] (https://www.mathworks.com/help/matlab/ref/title.html?searchHighlight=title&s_tid=doc_srchtitle) zu verwenden? Es funktioniert für mich auf dem Biblot-Beispiel. – Cecilia

Antwort

2

Wie bei vielen Plotfunktionen kann ich meinen Anruf an biplot mit einem Anruf an title verfolgen, um der aktuellen Zahl einen Titel hinzuzufügen.

%% Biplot of Coefficients and Scores 
% https://www.mathworks.com/help/stats/biplot.html#bt_y8xe-2 
% Load the sample data. 

% Copyright 2015 The MathWorks, Inc. 

load carsmall 
%% 
% Define the variable matrix and delete the rows with missing values. 
x = [Acceleration Displacement Horsepower MPG Weight]; 
x = x(all(~isnan(x),2),:); 
%% 
% Perform a principal component analysis of the data. 
[coefs,score] = pca(zscore(x)); 
%% 
% View the data and the original variables in the space of the first three 
% principal components. 
vbls = {'Accel','Disp','HP','MPG','Wgt'}; 
biplot(coefs(:,1:3),'scores',score(:,1:3),'varlabels',vbls); 

%Add the title 
title('My title'); 

Wenn die richtige Zahl nicht aktuell ist, können Sie die aktuelle Zahl von figure(f) Aufruf ändern, wo f ist die Figur Griff, der Sie den Titel hinzufügen möchten.

2

Die Funktion biplot erzeugt eine Reihe von Linienobjekten innerhalb der aktuellen Achsen, und nur these name-value pairs gelten für die Funktionseingabe-Argumentliste. Die Linienobjekte sind Kinder des Achsenobjekts, und es ist das Achsenobjekt, das die 'Title' property enthält. Wenn Sie einen Titel hinzufügen möchten, müssen Sie es mit einem separaten Befehl zu tun haben, wie zum Beispiel eine der folgenden Möglichkeiten:

title('Biplot title'); 
%Or... 
hAxes = gca; 
hAxes.Title.String = 'Biplot title'; 
+0

Ich mag, dass Ihre Antwort Adressen, warum die Titeleigenschaft mit einem separaten Befehl geändert wird. – Cecilia

0

Ich glaube, dass >> Titel sowie >> xlabel und >> ylabel muss außerhalb der eigentlichen Handlung aufgerufen werden. Ich nehme an, der folgende Code würde irgendwo in Ihrem m-Datei sein:

biplot(*All of the parameters go in here*) 
title('This is a title.') 
xlabel('This labels the x-axis.') 
ylabel('This labels the y-axis.') 

Here ist MATLAB Titel-Dokumentation, wenn Sie es brauchen. Ich finde, dass MathWorks mit seiner Dokumentation sehr gründlich ist.

Verwandte Themen