<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MATLAB pour les geeks &#187; hold</title>
	<atom:link href="https://blog.developpez.com/matlab4geek/?feed=rss2&#038;tag=hold" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/matlab4geek</link>
	<description>&#62;&#62;why(393) </description>
	<lastBuildDate>Fri, 09 Jan 2015 13:05:12 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Graymon</title>
		<link>https://blog.developpez.com/matlab4geek/?p=23</link>
		<comments>https://blog.developpez.com/matlab4geek/?p=23#comments</comments>
		<pubDate>Fri, 18 Feb 2011 09:24:06 +0000</pubDate>
		<dc:creator><![CDATA[tug83]]></dc:creator>
				<category><![CDATA[Best-of des commandes MATLAB inutiles]]></category>
		<category><![CDATA[defaultaxescolororder]]></category>
		<category><![CDATA[findobj]]></category>
		<category><![CDATA[fontweight]]></category>
		<category><![CDATA[graymon]]></category>
		<category><![CDATA[hold]]></category>
		<category><![CDATA[linewidth]]></category>
		<category><![CDATA[MATLAB Answers]]></category>
		<category><![CDATA[plot]]></category>
		<category><![CDATA[R12SP1]]></category>
		<category><![CDATA[r2011a]]></category>
		<category><![CDATA[sin]]></category>
		<category><![CDATA[subplot]]></category>
		<category><![CDATA[title]]></category>
		<category><![CDATA[what]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Ah ça faisait longtemps que je n&#8217;avais pas trouvé une fonction MATLAB à mettre dans la catégorie Best-of des commandes MATLAB inutiles. Bien sûr ce n&#8217;est que mon avis ! Bon allons-y : Graymon &#8230;Avez vous déjà entendu parlé ou utilisé cette fonction? A part les vieux briscards de MATLAB des années 90 je ne [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Ah ça faisait longtemps que je n&rsquo;avais pas trouvé une fonction MATLAB à mettre dans la catégorie  <em><a href="http://blog.developpez.com/matlab4geek/c2677/best-of-des-fonctions-inutiles/">Best-of des commandes MATLAB inutiles</a></em>. Bien sûr ce n&rsquo;est que mon avis !</p>
<p>Bon allons-y :</p>
<p><a href="http://www.mathworks.com/access/helpdesk/help/techdoc/ref/graymon.html">Graymon</a> &#8230;Avez vous déjà entendu parlé ou utilisé cette fonction?<br />
A part les vieux briscards de MATLAB des années 90 je ne pense pas!!</p>
<p>Je suis tombé dessus par hasard en parcourant la doc.</p>
<ul>
<li><strong>graymon at a Glance</strong></li>
</ul>
<blockquote><p>&gt;&gt; help graymon<br />
 GRAYMON Set graphics defaults <strong>for gray-scale monitors</strong>.<br />
    GRAYMON changes the default graphics properties to produce<br />
    legible displays for gray-scale monitors.</p></blockquote>
<p>&#8230;WOW for gray-scale monitors!</p>
<p>Bon je doute qu&rsquo;il y ait encore des gens qui bossent avec ce genre d&rsquo;écran :</p>
<p><img src="http://blog.developpez.com/media/graymon matlab.jpg" width="444" height="582" alt="graymon matlab r2011a" /></p>
<p>Alors concrètement que fait le code de graymon:</p>
<blockquote><p>ch = get(0,&rsquo;children&rsquo;);<br />
co = [.75 .5 .25]&rsquo;*ones(1,3);<br />
set(ch,&rsquo;DefaultAxesColorOrder&rsquo;,co)<br />
set(0,&rsquo;<strong>DefaultAxesColorOrder</strong>&lsquo;,co)</p></blockquote>
<p>Il fait en sorte que les couleurs des lignes dans les graphiques soient toujours grises soit :  [.75 .5 .25]</p>
<p>En MATLAB 6.1 (R12SP1) qui marche très bien d&rsquo;ailleurs sous mon Windows XP Service Pack3 (SP3) , le code était différent :</p>
<blockquote>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">ch = get(0,'children'); <br />
if isempty(ch) <br />
&nbsp; &nbsp;fig = 0; <br />
else <br />
&nbsp; &nbsp;fig = [gcf 0]; <br />
end <br />
co = [.75 .5 .25]'*ones(1,3); <br />
set(fig,'defaultaxescolororder',co)</div></div>
</blockquote>
<p>Alors par défaut pour rappel  voici les couleurs utilisées par MATLAB:</p>
<blockquote><p>&gt;&gt; get(0,&rsquo;defaultaxescolororder&rsquo;)</p>
<p>ans =</p>
<p>         0         0    1.0000<br />
         0    0.5000         0<br />
    1.0000         0         0<br />
         0    0.7500    0.7500<br />
    0.7500         0    0.7500<br />
    0.7500    0.7500         0<br />
    0.2500    0.2500    0.2500</p></blockquote>
<p>Cette note technique peut d&rsquo;ailleurs vous servir:<br />
<a href="http://www.mathworks.com/support/solutions/en/data/1-9FL6RD/?solution=1-9FL6RD">How do I create lines with different colors greater than the default number of colors in MATLAB 7.7 (R2008b)? </a></p>
<ul>
<li><strong>Une petite démo !</strong></li>
</ul>
<p>Faisons deux subplots avec les mêmes données. Le second subplot fera appel à notre fameux graymon!</p>
<blockquote>
<p>%% premier subplot<br />
subplot 211<br />
x = -pi: .1 : pi;<br />
y = sin(x);<br />
plot(x,y)<br />
hold on<br />
plot(1:10)<br />
h = title(&lsquo;Original DefaultAxesColorOrder&rsquo;);<br />
set(h,&rsquo;fontweight&rsquo;,&rsquo;bold&rsquo;)</p>
<p>% Attention graymon arrive !<br />
graymon</p>
<p>%% Second subplot<br />
subplot 212</p>
<p>x = -pi: .1 : pi;<br />
y = sin(x);<br />
plot(x,y)<br />
hold on<br />
plot(1:10)<br />
h = title(&lsquo;Graymon !!&rsquo;);</p>
<p>%% Mise en forme<br />
set(h,&rsquo;fontweight&rsquo;,&rsquo;bold&rsquo;)<br />
set(findobj(&lsquo;type&rsquo;,&rsquo;line&rsquo;),&rsquo;linewidth&rsquo;,6)</p></blockquote>
<p>Voilà ce qu&rsquo;on obtient :</p>
<blockquote><p><img src="http://blog.developpez.com/media/subplot.jpg" width="561" height="420" alt="subplot colororder" /></p></blockquote>
<p>Ça si ce n&rsquo;est pas de la démo qui tue!!</p>
<ul>
<li><strong>Where is graymon ?</strong></li>
</ul>
<p>Donc cette fonction se trouve dans le répertoire <em>matlabroot toolbox matlab graph3d</em></p>
<p>Alors soyons fou pour voir ce que contient ce répertoire , on va utiliser une fonction que je n&rsquo;utilise jamais , la fonction <strong>what</strong> !</p>
<blockquote><p>&gt;&gt; what</p>
<p>M-files in the current directory C:\MATLAB\SOF\r2010b\toolbox\matlab\graph3d</p>
<p>Contents          campan            colorcube         hot               prism             white<br />
alim              campos            colordef          hsv               rotate3d          whitebg<br />
alpha             camproj           colormap          imapprox          shading           winter<br />
alphamap          camroll           colormapeditor    jet               specular          xlim<br />
autumn            camrotate         cool              lightangle        spring            ylim<br />
bone              camtarget         copper            lighting          summer            zlabel<br />
brighten          camup             daspect           lines             surf              zlim<br />
camdolly          camva             diffuse           material          surfl<br />
cameramenu        camzoom           fill3             mesh              surfnorm<br />
cameratoolbar     caxis             flag              objbounds         vga<br />
camlight          cmapeditor        gray              pbaspect          view<br />
camlookat         cmpermute         graymon           pink              viewmtx<br />
camorbit          cmunique          hidden            plot3             vrml              </p>
<p>MAT-files in the current directory C:\MATLAB\SOF\r2010b\toolbox\matlab\graph3d</p>
<p>camtoolbarimages      </p>
<p>Classes in the current directory C:\MATLAB\SOF\r2010b\toolbox\matlab\graph3d</p>
<p>graph3d  </p></blockquote>
<p>Donc là on retrouve des fonctions beaucoup plus connues comme mesh, colormap &#8230;</p>
<ul>
<li><strong>Mon enquête</strong></li>
</ul>
<p>J&rsquo;ai cherché s&rsquo;il y avait des routines MATLAB qui appelaient graymon , je n&rsquo;ai rien trouvé ni en R12SP1 , ni en R2011a.<br />
J&rsquo;ai également cherché sur le site du <strong>support MATLAB</strong> s&rsquo;il y avait des bug reports ou des solutions techniques concernant graymon &#8230; idem rien trouvé , la preuve en image :</p>
<blockquote><p><img src="http://blog.developpez.com/media/support grayscale.JPG" width="613" height="395" alt="r2011a support graymon" /></p></blockquote>
<p>Ensuite je me suis dit que peut-être des MATLAB users avaient eu un souci sur cette fonctionnalité et avaient donc posé la question dans le <strong>MATLAB Central</strong>:</p>
<blockquote><p><img src="http://blog.developpez.com/media/matlab central.JPG" width="1000" height="504" alt="matlab central" /></p></blockquote>
<p>Encore une fois , c&rsquo;est un échec!</p>
<p>Alors je n&rsquo;ai pas lâché prise , je me suis dit et si le nouveau <strong>MATLAB Answers</strong> (à ne pas confondre avec le Yahoo Answers!) avait eu une question à ce sujet &#8230; suspense &#8230;</p>
<blockquote><p><img src="http://blog.developpez.com/media/matlab answers.JPG" width="668" height="315" alt="matlab answers" /></p></blockquote>
<p>et mince rien à se mettre sous la dent mais ce n&rsquo;est pas faute d&rsquo;avoir cherché!!</p>
<p>bon beh voilà je crois qu&rsquo;on a fait le tour de cette super fonction !!</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
