Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
matlab直方图上的多色_Matlab_Colors_Histogram - Fatal编程技术网

matlab直方图上的多色

matlab直方图上的多色,matlab,colors,histogram,Matlab,Colors,Histogram,您好,我正在尝试在matlab直方图上获得多种颜色-我认为以下应该可以做到: figure hist(ligand,50) h=findobj(gca,'Type','patch'); set(h,'FaceColor',[0 .5 .5],'EdgeColor','w') hold on; hist(potassium,50) g=findobj(gca,'Type','patch'); set(g,'FaceColor',[0 1 1],'EdgeColor','w') hold on; h

您好,我正在尝试在matlab直方图上获得多种颜色-我认为以下应该可以做到:

figure
hist(ligand,50)
h=findobj(gca,'Type','patch');
set(h,'FaceColor',[0 .5 .5],'EdgeColor','w')
hold on;
hist(potassium,50)
g=findobj(gca,'Type','patch');
set(g,'FaceColor',[0 1 1],'EdgeColor','w')
hold on;
hist(rectifier,50)
title('Alignment to AFP1')
xlabel('Score'); ylabel('Number of Sequences')
hold off;
其中第一种颜色为[0.5.5],第二种颜色为[0.1],第三种颜色为默认颜色。然而,即使我已经使用两个手柄为前两个指定了两种不同的颜色,h和g-使用g手柄时,它们都是相同的颜色

我做错了什么

编辑-这是路易斯·门多斯的建议-我得到了一个“索引超过了矩阵维度”,如下所示

figure
hist(ligand,50)
g=findobj(gca,'Type','patch');
set(g(1),'FaceColor',[0 .5 .5],'EdgeColor','w')
hold on;
hist(potassium,50)
set(g(2),'FaceColor',[0 1 1],'EdgeColor','w')
hist(rectifier,50)
title('Alignment to AFP1')
xlabel('Score'); ylabel('Number of Sequences')
hold off; 

谢谢。

问题在于
g
是一个两元素向量,因为它包括已经绘制的两个直方图。删除带有
h
(第3行和第4行)的行,并将
set(g,…)
行替换为

set(g(1),'FaceColor',[0 .5 .5],'EdgeColor','w')
set(g(2),'FaceColor',[0 1 1],'EdgeColor','w')

你试过用h=hist(配体,50)代替gca吗?我认为问题在于g是一个双元素向量。尝试
set(g(1),'FaceColor',[0.5.5],'EdgeColor','w')
set(g(2),'FaceColor',[01],'EdgeColor','w')
@lhcgeneva
hist
不返回句柄。它将返回bin countHi Luis-再次感谢您回答我的一个问题。在添加您建议的第二行时,似乎出现了问题,这给了我一个matirx越界错误。我将用我正在使用的当前代码更新我的问题。@brucezepplin在更新的代码中,您需要将第三行(
g=findobj…
)和第四行(
set(g(1)…
)移到第二行
hist
)之后和
set(g(2)之前…
。试试看,告诉我是否works@brucezeppelin在绘制两个直方图之后添加
findobj
行,以便
g
包含这两个直方图