probem with FaceColor of bar

조회 수: 5 (최근 30일)
mohamed gryaa
mohamed gryaa 2019년 9월 30일
댓글: darova 2019년 10월 4일
R=[0.779810425627480 0.000659297275251825 0.688360393160301 0.184532497610895 0.0905962113611394 0.0626722269195076 0.115760244765211 9.82482188727207e-06]
R2=[0.780896183843548 0.783089437325240 0.824384828931732 0.783480655246833 0.782324163937975 0.843400789787716 0.780259820660027 0.692761472581375 0.186630591612089 0.112331622540645 0.0684118151132265 0.124754260377728 0.000750940658416743 0.786209417062528 0.696211586340910 0.704468853008563 0.793533655775326 0.689231222654964 0.247394539787509 0.259526400351099 0.187357565089202 0.306685869655797 0.221985207424738 0.213936150337528 0.0911810803863357 0.226392210021089 0.0628097955366125 0.177330398333869]
R3=[0.783714743066040 0.826211863604426 0.783570491492865 0.784235776628874 0.846564931503649 0.781795435841793 0.824795480225099 0.793293977502063 0.807394055917125 0.843543223850931 0.784225204506264 0.828604905652616 0.830131797565598 0.845605618105580 0.866367812401167 0.784125887674771 0.844962871032082 0.783775317173255 0.857006696649914 0.782646132825257 0.886525345744327 0.792443729599900 0.707602204791307 0.706291944439437 0.795689075333992 0.692960273475268 0.269367754096017 0.269897642276868 0.187804460375981 0.338233654026156 0.308011853235251 0.214628124374582 0.117141128901629 0.229057283333948 0.0684491039966618 0.183900696434232 0.789982210441524 0.793671406033401 0.807345796487103 0.835447142202684 0.705376496011716 0.804011717368906 0.696706432568307 0.795703083661133 0.705025556256066 0.832447316043765 0.383708291936295 0.256938376298548 0.368132130189507 0.275653288847231 0.375594581589765 0.328508421589727 0.426445219789627 0.222082122851731 0.295080637436694 0.303500075279901]
R4=[0.826996774935897 0.794557334602349 0.809619574536623 0.846642577477218 0.785322675618129 0.828939025798648 0.833675796861419 0.847202474959195 0.881468153988862 0.784703824104669 0.851106275596922 0.784004921796498 0.858781120350036 0.785070083916637 0.888559577339896 0.828833804725073 0.834955475482176 0.846195401779085 0.867140402842741 0.813983848871127 0.845075441261779 0.794705445368061 0.872508246817512 0.810962400206204 0.886525524768893 0.831303117637229 0.847642143194423 0.868934285031242 0.858409734520770 0.872566944267203 0.906757870765131 0.857428757371442 0.784387451549559 0.886620441089954 0.905697241656523 0.801922541124688 0.797636506176264 0.807358981738157 0.862781849694327 0.710334094086818 0.804080272956492 0.707686352900283 0.798434388040983 0.706487674364295 0.833750942309195 0.471755923663536 0.270095621013156 0.456472753439997 0.277630257351045 0.430498750484947 0.343336309036551 0.454955851249911 0.317945379843094 0.298347039374467 0.304574520635417 0.794166474258310 0.814390776564570 0.840239456373557 0.810347726332535 0.841150193698107 0.877516625338572 0.804070982436114 0.705841896439888 0.849259411824625 0.832907343342206 0.437358816488236 0.495244980869643 0.405878538783720 0.424820970524598 0.547495448988831]
R5=[0.828991929369686 0.838411193709899 0.847498079098537 0.884286848091013 0.813984689455561 0.852689268734507 0.795461615160834 0.873675836205425 0.815033194461026 0.888567443766334 0.833676221089556 0.851532466108260 0.881503316538568 0.859249568891160 0.893364109834186 0.907586430555856 0.858785564028645 0.785320228500511 0.889516792068951 0.906442600699576 0.838035644265987 0.847642955904863 0.868937970747267 0.873278896824283 0.876253552968026 0.908008036718245 0.872689586925684 0.817720580546422 0.886663386046064 0.937203366812540 0.858609315682532 0.872839144872220 0.907099734481859 0.924204051669980 0.910846971035114 0.802163827732857 0.815595411648910 0.884996077524746 0.810350740286317 0.864252213958193 0.883287964927457 0.804103360669447 0.710335861966019 0.849504374181575 0.834436602026480 0.484612221304780 0.704965265425382 0.460974241930084 0.447415007134505 0.598056626502316 0.814518098488400 0.842523239334591 0.888286770499680 0.878177732084617 0.852719060026541 0.604403396129531]
R6=[0.839071360465035 0.852704784532168 0.887822544505265 0.876021378692969 0.896575199509569 0.909363801082844 0.875080432727216 0.818093523631484 0.890239643298577 0.937369178243077 0.859250167086107 0.903297054324622 0.907629634392680 0.926273966668406 0.911091067394923 0.873423351158586 0.877473297910146 0.908008113026594 0.941060841208969 0.938200096744872 0.927636099224910 0.815597023464531 0.891134879647912 0.903795572804284 0.883537686178393 0.854841118650416 0.733815636601844 0.889727749438983]
R7=[0.878642031246962 0.903669866631326 0.910417834781449 0.941547570214469 0.938233123072641 0.937500290384948 0.942085824188201 0.914574284340743]
R8=[0.945329036585856]
R_all = [R R2 R3 R4 R5 R6 R7 R8];
label_all = [label,label2,label3,label4,label5,label6,label7,label8];
[R_all_sort,ind_sort] = sort(R_all,'descend');
label_all_sort = label_all(ind_sort);
threshold = 0.95;
logical_index = R_all_sort>=threshold;
N_true = length(find(logical_index));
figure
hall=bar(R_all_sort(logical_index));
hold on
grid on
xlabel('metriche lavatrice');
ylabel('R^2 lavatrice ');
ax=gca;
ax.XTick = 1:N_true;
ax.XTickLabels = label_all_sort(logical_index);
ax.XTickLabelRotation = 90;
legend({'soggettività:lavatrice' });
ylim([threshold 1]);
hi i have a problem, i need to have differet color when i plot the figure bar (Facecolor) like this:
R = red
R2= green
R3= white
R4 =cyan
R5=blue
R6=yellow
R7=black
R8= magenta
  댓글 수: 1
dpb
dpb 2019년 9월 30일
threshold = 0.95;
logical_index = R_all_sort>=threshold;
...
>> sum(logical_index)
ans =
0
>> max(R_all)
ans =
0.9453
>>
There are no elements above the threshold so nothing will show up on the plot.
Also, you've mixed all elements up in combining into one long vector and then sorted that vector so there's no identification from which element any particular value came.
Would need to define corollary array of group number to carry along.

댓글을 달려면 로그인하십시오.

채택된 답변

darova
darova 2019년 9월 30일
One way:
R=[0.779810425627480 0.000659297275251825 0.688360393160301 0.184532497610895 0.0905962113611394 0.0626722269195076 0.115760244765211 9.82482188727207e-06];
R2=[0.780896183843548 0.783089437325240 0.824384828931732 0.783480655246833 0.782324163937975 0.843400789787716 0.780259820660027 0.692761472581375 0.186630591612089 0.112331622540645 0.0684118151132265 0.124754260377728 0.000750940658416743 0.786209417062528 0.696211586340910 0.704468853008563 0.793533655775326 0.689231222654964 0.247394539787509 0.259526400351099 0.187357565089202 0.306685869655797 0.221985207424738 0.213936150337528 0.0911810803863357 0.226392210021089 0.0628097955366125 0.177330398333869];
R3=[0.783714743066040 0.826211863604426 0.783570491492865 0.784235776628874 0.846564931503649 0.781795435841793 0.824795480225099 0.793293977502063 0.807394055917125 0.843543223850931 0.784225204506264 0.828604905652616 0.830131797565598 0.845605618105580 0.866367812401167 0.784125887674771 0.844962871032082 0.783775317173255 0.857006696649914 0.782646132825257 0.886525345744327 0.792443729599900 0.707602204791307 0.706291944439437 0.795689075333992 0.692960273475268 0.269367754096017 0.269897642276868 0.187804460375981 0.338233654026156 0.308011853235251 0.214628124374582 0.117141128901629 0.229057283333948 0.0684491039966618 0.183900696434232 0.789982210441524 0.793671406033401 0.807345796487103 0.835447142202684 0.705376496011716 0.804011717368906 0.696706432568307 0.795703083661133 0.705025556256066 0.832447316043765 0.383708291936295 0.256938376298548 0.368132130189507 0.275653288847231 0.375594581589765 0.328508421589727 0.426445219789627 0.222082122851731 0.295080637436694 0.303500075279901];
R4=[0.826996774935897 0.794557334602349 0.809619574536623 0.846642577477218 0.785322675618129 0.828939025798648 0.833675796861419 0.847202474959195 0.881468153988862 0.784703824104669 0.851106275596922 0.784004921796498 0.858781120350036 0.785070083916637 0.888559577339896 0.828833804725073 0.834955475482176 0.846195401779085 0.867140402842741 0.813983848871127 0.845075441261779 0.794705445368061 0.872508246817512 0.810962400206204 0.886525524768893 0.831303117637229 0.847642143194423 0.868934285031242 0.858409734520770 0.872566944267203 0.906757870765131 0.857428757371442 0.784387451549559 0.886620441089954 0.905697241656523 0.801922541124688 0.797636506176264 0.807358981738157 0.862781849694327 0.710334094086818 0.804080272956492 0.707686352900283 0.798434388040983 0.706487674364295 0.833750942309195 0.471755923663536 0.270095621013156 0.456472753439997 0.277630257351045 0.430498750484947 0.343336309036551 0.454955851249911 0.317945379843094 0.298347039374467 0.304574520635417 0.794166474258310 0.814390776564570 0.840239456373557 0.810347726332535 0.841150193698107 0.877516625338572 0.804070982436114 0.705841896439888 0.849259411824625 0.832907343342206 0.437358816488236 0.495244980869643 0.405878538783720 0.424820970524598 0.547495448988831];
R5=[0.828991929369686 0.838411193709899 0.847498079098537 0.884286848091013 0.813984689455561 0.852689268734507 0.795461615160834 0.873675836205425 0.815033194461026 0.888567443766334 0.833676221089556 0.851532466108260 0.881503316538568 0.859249568891160 0.893364109834186 0.907586430555856 0.858785564028645 0.785320228500511 0.889516792068951 0.906442600699576 0.838035644265987 0.847642955904863 0.868937970747267 0.873278896824283 0.876253552968026 0.908008036718245 0.872689586925684 0.817720580546422 0.886663386046064 0.937203366812540 0.858609315682532 0.872839144872220 0.907099734481859 0.924204051669980 0.910846971035114 0.802163827732857 0.815595411648910 0.884996077524746 0.810350740286317 0.864252213958193 0.883287964927457 0.804103360669447 0.710335861966019 0.849504374181575 0.834436602026480 0.484612221304780 0.704965265425382 0.460974241930084 0.447415007134505 0.598056626502316 0.814518098488400 0.842523239334591 0.888286770499680 0.878177732084617 0.852719060026541 0.604403396129531];
R6=[0.839071360465035 0.852704784532168 0.887822544505265 0.876021378692969 0.896575199509569 0.909363801082844 0.875080432727216 0.818093523631484 0.890239643298577 0.937369178243077 0.859250167086107 0.903297054324622 0.907629634392680 0.926273966668406 0.911091067394923 0.873423351158586 0.877473297910146 0.908008113026594 0.941060841208969 0.938200096744872 0.927636099224910 0.815597023464531 0.891134879647912 0.903795572804284 0.883537686178393 0.854841118650416 0.733815636601844 0.889727749438983];
R7=[0.878642031246962 0.903669866631326 0.910417834781449 0.941547570214469 0.938233123072641 0.937500290384948 0.942085824188201 0.914574284340743];
R8=[0.945329036585856];
R_all = [R R2 R3 R4 R5 R6 R7 R8];
color_ind = [R*0+1 R2*0+2 R3*0+3 R4*0+4 R5*0+5 R6*0+6 R7*0+7 R8*0+8];
cm = 'rgwcbykm'; % reg green white ...
[R_all_sort,ind_sort] = sort(R_all,'descend');
color_sort = color_ind(ind_sort);
threshold = 0.95;
ind1 = find( R_all_sort<=threshold );
cla
hold on
for i = ind1
h = bar(ind1(i),R_all_sort(i));
set(h,'EdgeColor','none','FaceColor',cm(color_sort(i)))
end
hold off
But works slow. Any idea of how speed it up?
  댓글 수: 6
dpb
dpb 2019년 10월 4일
Ah so!
darova
darova 2019년 10월 4일
Yes, Sir!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

dpb
dpb 2019년 9월 30일
편집: dpb 2019년 9월 30일
Carrying on from the above after defining data...
clrs=[[1 0 0];[0 1 0];[1 1 1];[0 1 1];[0 0 1];[1 1 0];[0 0 0];[1 0 1]]; % rgb for named colors
R1=R; % just for symmetry in naming
G=[1+R1*0 2+R2*0 3+R3*0 4+R4*0 5+R5*0 6+R6*0 7+R7*0 8+R8*0];
threshold=0.925; % 0.95 > max() --> no elements selected
ix=(R_all>=threshold);
R=R_all(ix);
[~,isort]=sort(R,'descend');
hBar=bar(R(isort));
hBar.FaceColor='flat';
hBar.CData=clrs(isort(G),:);
returns
  댓글 수: 1
darova
darova 2019년 10월 2일
Works olrait thenks!

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Graphics Object Programming에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by