2016-05-18 4 views
0

私はMatlab 2016aのBioinformatics Toolboxを使用しています。私はmat = DataMatrix()を使用して行と列のラベルを持つ行列を作成してから、fig = HeatMap(mat)を使ってヒートマップを作成します。行ラベルと列ラベルが結果のFigureに自動的に追加されます。Matlab Bioinformatics ToolboxのHeatMap()のフォントを変更

結果のFigure内のすべてのフォントをArialに変更したいとします。私はアンダースコアが添え字として解釈されるのを止めたい。ただし、コマンド:エラーで

fig = HeatMap(mat,'Colormap','fontName','Arial','Interpreter','none') 

結果:

Unknown parameter name: fontName. 
Unknown parameter name: Interpreter. 

とコマンド:中

set(fig,'fontName','Arial','Interpreter','none') 

結果:

The name 'fontName' is not an accessible property for an instance of class 'HeatMap'. 
The name 'Interpreter' is not an accessible property for an instance of class 'HeatMap'. 

どのように私は結果を得ることができますが欲しいです?

答えて

1

ここで、HeatMapビュー(HeatMapオブジェクトの作成時に表示されるもの)は通常のプロットと等価ではなく、かなり柔軟性がありません。幸いなことに、HeatMapを代わりにプロットとしてレンダリングすることができます。これは操作を可能にします。この例はThis Mathworks siteから解除されています。

load filteredyeastdata 
yeastvalues = yeastvalues(1:5, 1:4); 
genes = genes(1:5, :); 
genes = strrep(genes, 'L', 'L_'); %// simulate underscores 
times = times(1:4); 
dat = DataMatrix(yeastvalues, genes, times); 
heatmap = HeatMap(dat); %// no way to suppress? 

enter image description here

それは(現在の設定を一覧表示する)properties(<object>)またはset(<object>)を使用してHeatMapオブジェクトの利用可能なプロパティを参照することが可能です。そこから、どのプロパティが利用可能でないかを知ることは簡単です( 'fontName'または 'Interpreter'はありません)。

MathworksではHeatMapsのためにplotメソッドを提供しています。これにより、より広い範囲のオプションが得られます。

plt = plot(heatmap); %// render the heat map and give us a handle 

pltに関連付けられているプロパティの非常に多くありますが、あなたが望む1「のTickLabelInterpreterは」(Axes Propertiesを参照)であるように見えます。

setは、セル配列またはキーと値のペアを入力として受け取ることができるため、複数のプロパティを一度に設定できます。

set(plt, {'Fontname', 'TickLabelInterpreter'}, {'Comic Sans MS', 'none'}); 
%// or set(plt, 'Fontname', 'Comic Sans MS', 'TickLabelInterpreter', 'none'); 

enter image description here

MATLAB 大文字と小文字が区別されることに注意してください!

関連する問題