scatterhist problem 'color value must be a 3 element vector'

rng default % For reproducibility
p1 = pearsrnd(0,1,-1,4,1000,1);
p2 = pearsrnd(0,1,0.75,3,1000,1);
figure
scatterhist(p1,p2)
It gives me:
Error using matlab.graphics.chart.primitive.Histogram/set
While setting the 'FaceColor' property of Histogram:
Color value must be a 3 element vector
Error in internal.stats.plotGroupedHist (line 130)
set(hXLines(i),'FaceColor',clr(i,:));
Error in
scatterhist>@()internal.stats.plotGroupedHist(x,grp,'NBins',xbin,'Color',clr,'DisplayStyle',style,'Norm','pdf','AxisOn',false,'PlotGroup',plotGroup)
(line 299)
Xfunc = @()internal.stats.plotGroupedHist(x,grp,'NBins',xbin,...
Error in scatterhist (line 384)
Xfunc();
WHY? How can I solve?

댓글 수: 9

It works for me. Can you post the output of
which -all scatterhist
C:\Program Files\MATLAB\MATLAB Production Server\R2015a\toolbox\stats\stats\scatterhist.m
Do you know why that's in a MATLAB production server subdirectory? Mine is just in the stats toolbox directory.
I don't know ... but everything has always worked perfectly!
Do you think this may be the problem?
I have seen an increase over the last few months in the number of installations showing up as MATLAB Production Server . It probably makes no difference.
Please check
which lines
The expected location is toolbox/matlab/graph3d/lines.m
no I have another one ... this: >> which lines C:\Users\mauro\Desktop\MATLAB\MATLAB_Generale\PERIZIE\Anatocismo\OCR\lines.m
condor, you need to do one of the following:
  1. delete C:\Users\mauro\Desktop\MATLAB\MATLAB_Generale\PERIZIE\Anatocismo\OCR\lines.m -- which would probably interfere with using that software
  2. rename that file to something else -- which would probably interfere with using that software unless you edited all of the code in that package to use a different name
  3. use pathtool to move that OCR directory to below the Mathworks-supplied directories -- which would probably interfere with using that software
  4. use pathtool to remove the OCR directory for you MATLAB path -- this would require that you cd to that directory to run the software
  5. create a subdirectory named private in C:\Users\mauro\Desktop\MATLAB\MATLAB_Generale\PERIZIE\Anatocismo\OCR and move the lines.m file to that subdirectory. In theory that should allow that software to work without changing anything else
condor
condor 2016년 10월 13일
편집: condor 2016년 10월 13일
Genius! Thanks Walter!!! PS How do I select your answer?

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

 채택된 답변

Walter Roberson
Walter Roberson 2016년 10월 13일

0 개 추천

condor, you need to do one of the following:
  1. delete C:\Users\mauro\Desktop\MATLAB\MATLAB_Generale\PERIZIE\Anatocismo\OCR\lines.m -- which would probably interfere with using that software
  2. rename that file to something else -- which would probably interfere with using that software unless you edited all of the code in that package to use a different name
  3. use pathtool to move that OCR directory to below the Mathworks-supplied directories -- which would probably interfere with using that software
  4. use pathtool to remove the OCR directory for you MATLAB path -- this would require that you cd to that directory to run the software
  5. create a subdirectory named private in C:\Users\mauro\Desktop\MATLAB\MATLAB_Generale\PERIZIE\Anatocismo\OCR and move the lines.m file to that subdirectory. In theory that should allow that software to work without changing anything else

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Historical Contests에 대해 자세히 알아보기

질문:

2016년 10월 11일

답변:

2016년 10월 13일

Community Treasure Hunt

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

Start Hunting!

Translated by