This file is indexed.

/usr/share/doc/racket/plot/intro.html is in racket-doc 6.1-4.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"/><title>1&nbsp;Introduction</title><link rel="stylesheet" type="text/css" href="../scribble.css" title="default"/><link rel="stylesheet" type="text/css" href="../racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-style.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../manual-racket.css" title="default"/><link rel="stylesheet" type="text/css" href="../doc-site.css" title="default"/><script type="text/javascript" src="../scribble-common.js"></script><script type="text/javascript" src="../manual-racket.js"></script><script type="text/javascript" src="../manual-racket.js"></script><script type="text/javascript" src="../doc-site.js"></script><script type="text/javascript" src="../local-redirect/local-redirect.js"></script><script type="text/javascript" src="../local-redirect/local-user-redirect.js"></script><!--[if IE 6]><style type="text/css">.SIEHidden { overflow: hidden; }</style><![endif]--></head><body id="doc-racket-lang-org"><div class="tocset"><div class="tocview"><div class="tocviewlist tocviewlisttopspace"><div class="tocviewtitle"><table cellspacing="0" cellpadding="0"><tr><td style="width: 1em;"><a href="javascript:void(0);" title="Expand/Collapse" class="tocviewtoggle" onclick="TocviewToggle(this,&quot;tocview_0&quot;);">&#9660;</a></td><td></td><td><a href="index.html" class="tocviewlink" data-pltdoc="x">Plot:<span class="mywbr"> &nbsp;</span> Graph Plotting</a></td></tr></table></div><div class="tocviewsublisttop" style="display: block;" id="tocview_0"><table cellspacing="0" cellpadding="0"><tr><td align="right">1&nbsp;</td><td><a href="" class="tocviewselflink" data-pltdoc="x">Introduction</a></td></tr><tr><td align="right">2&nbsp;</td><td><a href="plotting.html" class="tocviewlink" data-pltdoc="x">2D and 3D Plotting Procedures</a></td></tr><tr><td align="right">3&nbsp;</td><td><a href="renderer2d.html" class="tocviewlink" data-pltdoc="x">2D Renderers</a></td></tr><tr><td align="right">4&nbsp;</td><td><a href="renderer3d.html" class="tocviewlink" data-pltdoc="x">3D Renderers</a></td></tr><tr><td align="right">5&nbsp;</td><td><a href="nonrenderer.html" class="tocviewlink" data-pltdoc="x">Nonrenderers</a></td></tr><tr><td align="right">6&nbsp;</td><td><a href="ticks_and_transforms.html" class="tocviewlink" data-pltdoc="x">Axis Transforms and Ticks</a></td></tr><tr><td align="right">7&nbsp;</td><td><a href="utils.html" class="tocviewlink" data-pltdoc="x">Plot Utilities</a></td></tr><tr><td align="right">8&nbsp;</td><td><a href="params.html" class="tocviewlink" data-pltdoc="x">Plot and Renderer Parameters</a></td></tr><tr><td align="right">9&nbsp;</td><td><a href="contracts.html" class="tocviewlink" data-pltdoc="x">Plot Contracts</a></td></tr><tr><td align="right">10&nbsp;</td><td><a href="porting.html" class="tocviewlink" data-pltdoc="x">Porting From Plot &lt;= 5.1.3</a></td></tr><tr><td align="right">11&nbsp;</td><td><a href="compat.html" class="tocviewlink" data-pltdoc="x">Compatibility Module</a></td></tr></table></div></div><div class="tocviewlist"><table cellspacing="0" cellpadding="0"><tr><td style="width: 1em;"><a href="javascript:void(0);" title="Expand/Collapse" class="tocviewtoggle" onclick="TocviewToggle(this,&quot;tocview_1&quot;);">&#9658;</a></td><td>1&nbsp;</td><td><a href="" class="tocviewselflink" data-pltdoc="x">Introduction</a></td></tr></table><div class="tocviewsublistbottom" style="display: none;" id="tocview_1"><table cellspacing="0" cellpadding="0"><tr><td align="right">1.1&nbsp;</td><td><a href="#%28part._.Plotting_2.D_.Graphs%29" class="tocviewlink" data-pltdoc="x">Plotting 2D Graphs</a></td></tr><tr><td align="right">1.2&nbsp;</td><td><a href="#%28part._.Terminology%29" class="tocviewlink" data-pltdoc="x">Terminology</a></td></tr><tr><td align="right">1.3&nbsp;</td><td><a href="#%28part._.Plotting_3.D_.Graphs%29" class="tocviewlink" data-pltdoc="x">Plotting 3D Graphs</a></td></tr><tr><td align="right">1.4&nbsp;</td><td><a href="#%28part._.Plotting_.Multiple_2.D_.Renderers%29" class="tocviewlink" data-pltdoc="x">Plotting Multiple 2D Renderers</a></td></tr><tr><td align="right">1.5&nbsp;</td><td><a href="#%28part._.Renderer_and_.Plot_.Bounds%29" class="tocviewlink" data-pltdoc="x">Renderer and Plot Bounds</a></td></tr><tr><td align="right">1.6&nbsp;</td><td><a href="#%28part._.Plotting_.Multiple_3.D_.Renderers%29" class="tocviewlink" data-pltdoc="x">Plotting Multiple 3D Renderers</a></td></tr><tr><td align="right">1.7&nbsp;</td><td><a href="#%28part._.Plotting_to_.Files%29" class="tocviewlink" data-pltdoc="x">Plotting to Files</a></td></tr><tr><td align="right">1.8&nbsp;</td><td><a href="#%28part._.Colors_and_.Styles%29" class="tocviewlink" data-pltdoc="x">Colors and Styles</a></td></tr></table></div></div></div><div class="tocsub"><div class="tocsubtitle">On this page:</div><table class="tocsublist" cellspacing="0"><tr><td><span class="tocsublinknumber">1.1<tt>&nbsp;</tt></span><a href="#%28part._.Plotting_2.D_.Graphs%29" class="tocsubseclink" data-pltdoc="x">Plotting 2D Graphs</a></td></tr><tr><td><span class="tocsublinknumber">1.2<tt>&nbsp;</tt></span><a href="#%28part._.Terminology%29" class="tocsubseclink" data-pltdoc="x">Terminology</a></td></tr><tr><td><span class="tocsublinknumber">1.3<tt>&nbsp;</tt></span><a href="#%28part._.Plotting_3.D_.Graphs%29" class="tocsubseclink" data-pltdoc="x">Plotting 3D Graphs</a></td></tr><tr><td><span class="tocsublinknumber">1.4<tt>&nbsp;</tt></span><a href="#%28part._.Plotting_.Multiple_2.D_.Renderers%29" class="tocsubseclink" data-pltdoc="x">Plotting Multiple 2D Renderers</a></td></tr><tr><td><span class="tocsublinknumber">1.5<tt>&nbsp;</tt></span><a href="#%28part._.Renderer_and_.Plot_.Bounds%29" class="tocsubseclink" data-pltdoc="x">Renderer and Plot Bounds</a></td></tr><tr><td><span class="tocsublinknumber">1.6<tt>&nbsp;</tt></span><a href="#%28part._.Plotting_.Multiple_3.D_.Renderers%29" class="tocsubseclink" data-pltdoc="x">Plotting Multiple 3D Renderers</a></td></tr><tr><td><span class="tocsublinknumber">1.7<tt>&nbsp;</tt></span><a href="#%28part._.Plotting_to_.Files%29" class="tocsubseclink" data-pltdoc="x">Plotting to Files</a></td></tr><tr><td><span class="tocsublinknumber">1.8<tt>&nbsp;</tt></span><a href="#%28part._.Colors_and_.Styles%29" class="tocsubseclink" data-pltdoc="x">Colors and Styles</a></td></tr></table></div></div><div class="maincolumn"><div class="main"><div class="versionbox"><span class="version">6.1</span></div><div class="navsettop"><span class="navleft"><form class="searchform"><input class="searchbox" style="color: #888;" type="text" value="...search manuals..." title="Enter a search string to search the manuals" onkeypress="return DoSearchKey(event, this, &quot;6.1&quot;, &quot;../&quot;);" onfocus="this.style.color=&quot;black&quot;; this.style.textAlign=&quot;left&quot;; if (this.value == &quot;...search manuals...&quot;) this.value=&quot;&quot;;" onblur="if (this.value.match(/^ *$/)) { this.style.color=&quot;#888&quot;; this.style.textAlign=&quot;center&quot;; this.value=&quot;...search manuals...&quot;; }"/></form>&nbsp;&nbsp;<a href="../index.html" title="up to the documentation top" data-pltdoc="x" onclick="return GotoPLTRoot(&quot;6.1&quot;);">top</a></span><span class="navright">&nbsp;&nbsp;<a href="index.html" title="backward to &quot;Plot: Graph Plotting&quot;" data-pltdoc="x">&larr; prev</a>&nbsp;&nbsp;<a href="index.html" title="up to &quot;Plot: Graph Plotting&quot;" data-pltdoc="x">up</a>&nbsp;&nbsp;<a href="plotting.html" title="forward to &quot;2 2D and 3D Plotting Procedures&quot;" data-pltdoc="x">next &rarr;</a></span>&nbsp;</div><h3 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;intro&quot;">1<tt>&nbsp;</tt><a name="(part._intro)"></a>Introduction</h3><p><table cellspacing="0" cellpadding="0" class="defmodule"><tr><td align="left"><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=require.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._require%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">require</a></span><span class="stt"> </span><a href="index.html" class="RktModLink" data-pltdoc="x"><span class="RktSym">plot</span></a><span class="RktPn">)</span></td><td align="right"><span class="RpackageSpec"><span class="Smaller">&nbsp;package:</span> <span class="stt">plot-gui-lib</span></span></td></tr><tr><td align="left" colspan="2"><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=require.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._require%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">require</a></span><span class="stt"> </span><a href="index.html" class="RktModLink" data-pltdoc="x"><span class="RktSym">plot/typed</span></a><span class="RktPn">)</span></td></tr></table></p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Plotting_2D_Graphs&quot;">1.1<tt>&nbsp;</tt><a name="(part._.Plotting_2.D_.Graphs)"></a>Plotting 2D Graphs</h4><p>To plot a one-input, real-valued function, do something like</p><p><div class="SIntrapara"><blockquote class="SCodeFlow"><p><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=require.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._require%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">require</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="RktPn">)</span></p></blockquote></div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="hspace">&nbsp;</span><span class="RktPn">#:label</span><span class="hspace">&nbsp;</span><span class="RktVal">"y = sin(x)"</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote></div></p><p>The first argument to <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span> is the function to be plotted, and the <span class="RktPn">#:label</span> argument becomes the name of the function in the legend.</p><p><div class="SIntrapara">If you&rsquo;re not using DrRacket, start with
</div><div class="SIntrapara"><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=require.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._require%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">require</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="RktPn">)</span></td></tr><tr><td><span class="RktPn">(</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-new-window~3f%29%29" class="RktValLink" data-pltdoc="x">plot-new-window?</a></span><span class="hspace">&nbsp;</span><span class="RktVal">#t</span><span class="RktPn">)</span></td></tr></table></blockquote></div><div class="SIntrapara">to open each plot in a new window.</div></p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Terminology&quot;">1.2<tt>&nbsp;</tt><a name="(part._.Terminology)"></a>Terminology</h4><p>In the above example, <span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="stt"> </span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span> and <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span> define the <span style="font-style: italic">x</span>-axis <a name="(tech._bound)"></a><span style="font-style: italic">bounds</span>, or the closed interval in which to plot the <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span> function.
The <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span> function automatically determines that the <span style="font-style: italic">y</span>-axis bounds should be [-1,1].</p><p>The <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span> function constructs a <a name="(tech._renderer)"></a><span style="font-style: italic">renderer</span>, which does the actual drawing. A renderer also produces legend entries, requests bounds to draw in, and requests axis ticks and tick labels.</p><p>The <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> function collects legend entries, bounds and ticks. It then sets up a <a name="(tech._plot._area)"></a><span style="font-style: italic">plot area</span> with large enough bounds to contain the renderers, draws the axes and ticks, invokes the renderers&rsquo; drawing procedures, and then draws the legend.</p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Plotting_3D_Graphs&quot;">1.3<tt>&nbsp;</tt><a name="(part._.Plotting_3.D_.Graphs)"></a>Plotting 3D Graphs</h4><p>To plot a two-input, real-valued function as a surface, try something like</p><blockquote class="refpara"><blockquote class="refcolumn"><blockquote class="refcontent"><p>The documentation can&rsquo;t show it, but in DrRacket you can rotate 3D plots by clicking on them and dragging the mouse. Try it!</p></blockquote></blockquote></blockquote><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._surface3d%29%29" class="RktValLink" data-pltdoc="x">surface3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._cos%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">cos</a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:title</span><span class="hspace">&nbsp;</span><span class="RktVal">"An R &#215; R &#8594; R function"</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-label</span><span class="hspace">&nbsp;</span><span class="RktVal">"x"</span><span class="hspace">&nbsp;</span><span class="RktPn">#:y-label</span><span class="hspace">&nbsp;</span><span class="RktVal">"y"</span><span class="hspace">&nbsp;</span><span class="RktPn">#:z-label</span><span class="hspace">&nbsp;</span><span class="RktVal">"cos(x) sin(y)"</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_2.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>This example also demonstrates using keyword arguments that change the plot, such as <span class="RktPn">#:title</span>.
In Plot, every keyword argument is optional and almost all have parameterized default values.
In the case of <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span>&rsquo;s <span class="RktPn">#:title</span>, the corresponding parameter is <span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-title%29%29" class="RktValLink" data-pltdoc="x">plot-title</a></span>.
That is, keyword arguments are usually shortcuts for parameterizing plots or renderers:</p><blockquote class="refpara"><blockquote class="refcolumn"><blockquote class="refcontent"><p>When parameterizing more than one plot, it is often easier to set parameters globally, as in <span class="RktPn">(</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-title%29%29" class="RktValLink" data-pltdoc="x">plot-title</a></span><span class="stt"> </span><span class="RktVal">"Untitled"</span><span class="RktPn">)</span> and <span class="RktPn">(</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d-angle%29%29" class="RktValLink" data-pltdoc="x">plot3d-angle</a></span><span class="stt"> </span><span class="RktVal">45</span><span class="RktPn">)</span>.</p><p>There are many parameters that do not correspond to keyword arguments, such as <span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-font-size%29%29" class="RktValLink" data-pltdoc="x">plot-font-size</a></span>. See <a href="params.html" data-pltdoc="x">Plot and Renderer Parameters</a> for the full listing.</p></blockquote></blockquote></blockquote><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=parameters.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fmore-scheme..rkt%2529._parameterize%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">parameterize</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-title%29%29" class="RktValLink" data-pltdoc="x">plot-title</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">"An R &#215; R &#8594; R function"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-x-label%29%29" class="RktValLink" data-pltdoc="x">plot-x-label</a></span><span class="hspace">&nbsp;</span><span class="RktVal">"x"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-y-label%29%29" class="RktValLink" data-pltdoc="x">plot-y-label</a></span><span class="hspace">&nbsp;</span><span class="RktVal">"y"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-z-label%29%29" class="RktValLink" data-pltdoc="x">plot-z-label</a></span><span class="hspace">&nbsp;</span><span class="RktVal">"cos(x) sin(y)"</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._contour-intervals3d%29%29" class="RktValLink" data-pltdoc="x">contour-intervals3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._cos%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">cos</a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_3.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>This example also demonstrates <span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._contour-intervals3d%29%29" class="RktValLink" data-pltdoc="x">contour-intervals3d</a></span>, which colors the surface between contour lines, or lines of constant height.
By default, <span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._contour-intervals3d%29%29" class="RktValLink" data-pltdoc="x">contour-intervals3d</a></span> places the contour lines at the same heights as the ticks on the <span style="font-style: italic">z</span> axis.</p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Plotting_Multiple_2D_Renderers&quot;">1.4<tt>&nbsp;</tt><a name="(part._.Plotting_.Multiple_2.D_.Renderers)"></a>Plotting Multiple 2D Renderers</h4><p>Renderers may be plotted together by passing them in a list:</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._list%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._axes%29%29" class="RktValLink" data-pltdoc="x">axes</a></span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktPn">#:style</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">dot</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._inverse%29%29" class="RktValLink" data-pltdoc="x">inverse</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_4.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>Here, <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._inverse%29%29" class="RktValLink" data-pltdoc="x">inverse</a></span> plots the inverse of a function. (Both <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span> and <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._inverse%29%29" class="RktValLink" data-pltdoc="x">inverse</a></span> plot the reflection line <span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="stt"> </span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="stt"> </span><span class="RktSym">x</span><span class="RktPn">)</span> identically.)</p><p>Notice the numbered colors.
Plot additionally recognizes, as colors, lists of RGB values such as <span class="RktVal">'</span><span class="RktVal">(</span><span class="RktVal">128</span><span class="stt"> </span><span class="RktVal">128</span><span class="stt"> </span><span class="RktVal">0</span><span class="RktVal">)</span>, <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=draw&amp;rel=color_.html&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">color%</a></span> instances, and strings like <span class="RktVal">"red"</span> and <span class="RktVal">"navajowhite"</span>.
(The last are turned into RGB triples using a <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=draw&amp;rel=color-database___.html&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">color-database&lt;%&gt;</a></span>.)
Use numbered colors when you just need different colors with good contrast, but don&rsquo;t particularly care what they are.</p><p>The <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._axes%29%29" class="RktValLink" data-pltdoc="x">axes</a></span> function returns a list of two renderers, one for each axis.
This list is passed in a list to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span>, meaning that <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> accepts <span style="font-style: italic">lists of lists</span> of renderers.
In general, both <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> and <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> accept a <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=unstable&amp;rel=contract.html%23%2528def._%2528%2528lib._unstable%252Fcontract..rkt%2529._treeof%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">treeof</a></span> renderers.</p><p>Renderers generate legend entries when passed a <span class="RktPn">#:label</span> argument. For example,</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._list%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._axes%29%29" class="RktValLink" data-pltdoc="x">axes</a></span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">#:label</span><span class="hspace">&nbsp;</span><span class="RktVal">"y = x^2"</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">#:label</span><span class="hspace">&nbsp;</span><span class="RktVal">"y = x"</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktPn">#:style</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">dot</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._inverse%29%29" class="RktValLink" data-pltdoc="x">inverse</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-2</span></span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">#:label</span><span class="hspace">&nbsp;</span><span class="RktVal">"x = y^2"</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_5.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>Lists of renderers are <span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528lib._racket%252Flist..rkt%2529._flatten%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">flatten</a></span>ed, and then plotted <span style="font-style: italic">in order</span>. The order is more obvious with interval plots:</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._list%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252B%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">+</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sin%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sin</a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">3</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:line1-color</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line2-color</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-min</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">#:x-max</span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_6.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>Clearly, the blue-colored interval between sine waves is drawn first.</p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Renderer_and_Plot_Bounds&quot;">1.5<tt>&nbsp;</tt><a name="(part._.Renderer_and_.Plot_.Bounds)"></a>Renderer and Plot Bounds</h4><p>In the preceeding example, the <span style="font-style: italic">x</span>-axis <a href="#%28tech._bound%29" class="techoutside" data-pltdoc="x"><span class="techinside">bounds</span></a> are passed to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> using the keyword arguments <span class="RktPn">#:x-min</span> and <span class="RktSym">x-max</span>.
The bounds could easily have been passed in either call to <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span> instead.
In both cases, <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> and <span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span> work together to determine <span style="font-style: italic">y</span>-axis <a href="#%28tech._bound%29" class="techoutside" data-pltdoc="x"><span class="techinside">bounds</span></a> large enough for both renderers.</p><p>It is not always possible for renderers and <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> or <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> to determine the bounds:</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktErr">plot: could not determine sensible plot bounds; got x &#8712; [#f,#f], y &#8712; [#f,#f]</span></p></td></tr><tr><td><p></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktErr">plot: could not determine sensible plot bounds; got x &#8712; [#f,#f], y &#8712; [#f,#f]</span></p></td></tr><tr><td><p></p></td></tr><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._pi%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">pi</a></span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><p><span class="RktErr">plot: could not determine sensible plot bounds; got x &#8712; [-3.141592653589793,#f], y &#8712; [#f,#f]</span></p></td></tr><tr><td><p></p></td></tr><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._list%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function%29%29" class="RktValLink" data-pltdoc="x">function</a></span><span class="hspace">&nbsp;</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktVal">0</span><span class="hspace">&nbsp;</span><span class="RktVal">#f</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><span class="RktErr">plot: could not determine sensible plot bounds; got x &#8712; [0,0], y &#8712; [0,0]</span></p></td></tr><tr><td><p></p></td></tr></table></blockquote><p>There is a difference between passing bounds to renderers and passing bounds to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> or <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span>: bounds passed to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> or <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> cannot be changed by a renderer that requests different bounds.
We might say that bounds passed to renderers are <span style="font-style: italic">suggestions</span>, and bounds passed to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span> and <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> are <span style="font-style: italic">commandments</span>.</p><p>Here is an example of commanding <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> to override a renderer&rsquo;s bounds. First, consider the plot of a sphere with radius <span class="RktVal">1</span>:</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._polar3d%29%29" class="RktValLink" data-pltdoc="x">polar3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">&#952;</span><span class="hspace">&nbsp;</span><span class="RktSym">&#961;</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line-style</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">transparent</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:altitude</span><span class="hspace">&nbsp;</span><span class="RktVal">25</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_7.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>Passing bounds to <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span> that are smaller than [-1..1] &#215; [-1..1] &#215; [-1..1] cuts off the six axial poles:</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._polar3d%29%29" class="RktValLink" data-pltdoc="x">polar3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">&#952;</span><span class="hspace">&nbsp;</span><span class="RktSym">&#961;</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">2</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line-style</span><span class="hspace">&nbsp;</span><span class="RktVal">'</span><span class="RktVal">transparent</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-0</span>.8</span><span class="hspace">&nbsp;</span><span class="RktPn">#:x-max</span><span class="hspace">&nbsp;</span><span class="RktVal">0.8</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:y-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-0</span>.8</span><span class="hspace">&nbsp;</span><span class="RktPn">#:y-max</span><span class="hspace">&nbsp;</span><span class="RktVal">0.8</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:z-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-0</span>.8</span><span class="hspace">&nbsp;</span><span class="RktPn">#:z-max</span><span class="hspace">&nbsp;</span><span class="RktVal">0.8</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:altitude</span><span class="hspace">&nbsp;</span><span class="RktVal">25</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_8.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Plotting_Multiple_3D_Renderers&quot;">1.6<tt>&nbsp;</tt><a name="(part._.Plotting_.Multiple_3.D_.Renderers)"></a>Plotting Multiple 3D Renderers</h4><p>Unlike with rendering 2D plots, rendering 3D plots is order-independent.
Their constituent shapes (such as polygons) are merged, sorted by view distance, and drawn back-to-front.</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=define.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._define%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">define</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">(</span><span class="RktSym">dist</span><span class="hspace">&nbsp;</span><span class="RktSym">cx</span><span class="hspace">&nbsp;</span><span class="RktSym">cy</span><span class="hspace">&nbsp;</span><span class="RktSym">cz</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="hspace">&nbsp;</span><span class="RktSym">z</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._sqrt%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqrt</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252B%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">+</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym">x</span><span class="hspace">&nbsp;</span><span class="RktSym">cx</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym">y</span><span class="hspace">&nbsp;</span><span class="RktSym">cy</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528lib._racket%252Fmath..rkt%2529._sqr%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">sqr</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._-%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x"><span class="nobreak">-</span></a></span><span class="hspace">&nbsp;</span><span class="RktSym">z</span><span class="hspace">&nbsp;</span><span class="RktSym">cz</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><table cellspacing="0" cellpadding="0"><tr><td></td></tr></table></td></tr><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d%29%29" class="RktValLink" data-pltdoc="x">plot3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=pairs.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._list%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._isosurface3d%29%29" class="RktValLink" data-pltdoc="x">isosurface3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">dist</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1/4</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span>/4</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span>/4</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">0.995</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">4</span><span class="hspace">&nbsp;</span><span class="RktPn">#:alpha</span><span class="hspace">&nbsp;</span><span class="RktVal">0.8</span><span class="hspace">&nbsp;</span><span class="RktPn">#:samples</span><span class="hspace">&nbsp;</span><span class="RktVal">21</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer3d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._isosurface3d%29%29" class="RktValLink" data-pltdoc="x">isosurface3d</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">dist</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span>/4</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1/4</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">1/4</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktVal">0.995</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktVal">6</span><span class="hspace">&nbsp;</span><span class="RktPn">#:alpha</span><span class="hspace">&nbsp;</span><span class="RktVal">0.8</span><span class="hspace">&nbsp;</span><span class="RktPn">#:samples</span><span class="hspace">&nbsp;</span><span class="RktVal">21</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span></span><span class="hspace">&nbsp;</span><span class="RktPn">#:x-max</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:y-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span></span><span class="hspace">&nbsp;</span><span class="RktPn">#:y-max</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:z-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-1</span></span><span class="hspace">&nbsp;</span><span class="RktPn">#:z-max</span><span class="hspace">&nbsp;</span><span class="RktVal">1</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:altitude</span><span class="hspace">&nbsp;</span><span class="RktVal">25</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_9.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Plotting_to_Files&quot;">1.7<tt>&nbsp;</tt><a name="(part._.Plotting_to_.Files)"></a>Plotting to Files</h4><p>Any plot can be rendered to PNG, PDF, PS and SVG files using <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot-file%29%29" class="RktValLink" data-pltdoc="x">plot-file</a></span> and <span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot3d-file%29%29" class="RktValLink" data-pltdoc="x">plot3d-file</a></span>, to include in papers and other published media.</p><h4 x-source-module="(lib &quot;plot/scribblings/plot.scrbl&quot;)" x-part-tag="&quot;Colors_and_Styles&quot;">1.8<tt>&nbsp;</tt><a name="(part._.Colors_and_.Styles)"></a>Colors and Styles</h4><p>In papers, stick to dark, fully saturated colors for lines, and light, desaturated colors for areas and surfaces.
Papers are often printed in black and white, and sticking to this guideline will help black-and-white versions of color plots turn out nicely.</p><p>To make this easy, Plot provides numbered colors that follow these guidelines, that are designed for high contrast in color as well.
When used as line colors, numbers are interpreted as dark, fully saturated colors.
When used as area or surface colors, numbers are interpreted as light, desaturated colors.</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=parameters.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fmore-scheme..rkt%2529._parameterize%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">parameterize</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line1-width%29%29" class="RktValLink" data-pltdoc="x">interval-line1-width</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line2-width%29%29" class="RktValLink" data-pltdoc="x">interval-line2-width</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=for.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._for%252Flist%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">for/list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym">i</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=sequences.html%23%2528def._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._in-range%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">in-range</a></span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-7</span></span><span class="hspace">&nbsp;</span><span class="RktVal">13</span><span class="RktPn">)</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktVal">1.3</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252B%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">+</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktVal">1.3</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:color</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line1-color</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line2-color</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-8</span></span><span class="hspace">&nbsp;</span><span class="RktPn">#:x-max</span><span class="hspace">&nbsp;</span><span class="RktVal">8</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_10.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><p>Color <span class="RktVal">0</span> is black for lines and white for areas.
Colors <span class="RktVal">1</span>..<span class="RktVal">120</span> are generated by rotating hues and adjusting to make neighbors more visually dissimilar.
Colors <span class="RktVal">121</span>..<span class="RktVal">127</span> are grayscale.</p><p>Colors <span class="RktVal"><span class="nobreak">-7</span></span>..<span class="RktVal"><span class="nobreak">-1</span></span> are also grayscale because before <span class="RktVal">0</span>, colors repeat.
That is, colors <span class="RktVal"><span class="nobreak">-1</span>28</span>..<span class="RktVal"><span class="nobreak">-1</span></span> are identical to colors <span class="RktVal">0</span>..<span class="RktVal">127</span>.
Colors also repeat after <span class="RktVal">127</span>.</p><p>If the paper will be published in black and white, use styles as well as, or instead of, colors.
There are <span class="RktVal">5</span> numbered pen styles and <span class="RktVal">7</span> numbered brush styles, which also repeat.</p><blockquote class="SCodeFlow"><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><table cellspacing="0" cellpadding="0" class="RktBlk"><tr><td><span class="stt">&gt; </span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=parameters.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fmore-scheme..rkt%2529._parameterize%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">parameterize</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._line-color%29%29" class="RktValLink" data-pltdoc="x">line-color</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">"black"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-color%29%29" class="RktValLink" data-pltdoc="x">interval-color</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">"black"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line1-color%29%29" class="RktValLink" data-pltdoc="x">interval-line1-color</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">"black"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line2-color%29%29" class="RktValLink" data-pltdoc="x">interval-line2-color</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">"black"</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line1-width%29%29" class="RktValLink" data-pltdoc="x">interval-line1-width</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="RktPn">]</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">[</span><span class="RktSym"><a href="params.html#%28def._%28%28lib._plot%2Fmain..rkt%29._interval-line2-width%29%29" class="RktValLink" data-pltdoc="x">interval-line2-width</a></span><span class="hspace">&nbsp;&nbsp;</span><span class="RktVal">3</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="plotting.html#%28def._%28%28lib._plot%2Fmain..rkt%29._plot%29%29" class="RktValLink" data-pltdoc="x">plot</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=for.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._for%252Flist%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">for/list</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktPn">[</span><span class="RktSym">i</span><span class="hspace">&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=sequences.html%23%2528def._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._in-range%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">in-range</a></span><span class="hspace">&nbsp;</span><span class="RktVal">7</span><span class="RktPn">)</span><span class="RktPn">]</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="renderer2d.html#%28def._%28%28lib._plot%2Fmain..rkt%29._function-interval%29%29" class="RktValLink" data-pltdoc="x">function-interval</a></span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktVal">1.5</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=lambda.html%23%2528form._%2528%2528lib._racket%252Fprivate%252Fbase..rkt%2529._%7Ece%7Ebb%2529%2529&amp;version=6.1" class="RktStxLink Sq" data-pltdoc="x">&#955;</a></span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym">x</span><span class="RktPn">)</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252B%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">+</a></span><span class="hspace">&nbsp;</span><span class="RktVal">1</span><span class="hspace">&nbsp;</span><span class="RktPn">(</span><span class="RktSym"><a href="http://download.racket-lang.org/docs/6.1/html/local-redirect/index.html?doc=reference&amp;rel=generic-numbers.html%23%2528def._%2528%2528quote._%7E23%7E25kernel%2529._%252A%2529%2529&amp;version=6.1" class="RktValLink Sq" data-pltdoc="x">*</a></span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktVal">1.5</span><span class="RktPn">)</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:style</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line1-style</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="hspace">&nbsp;</span><span class="RktPn">#:line2-style</span><span class="hspace">&nbsp;</span><span class="RktSym">i</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr><tr><td><span class="hspace">&nbsp;&nbsp;</span><span class="hspace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="RktPn">#:x-min</span><span class="hspace">&nbsp;</span><span class="RktVal"><span class="nobreak">-8</span></span><span class="hspace">&nbsp;</span><span class="RktPn">#:x-max</span><span class="hspace">&nbsp;</span><span class="RktVal">8</span><span class="RktPn">)</span><span class="RktPn">)</span></td></tr></table></td></tr><tr><td><p><img style="vertical-align: 0px; margin: -3px -3px -3px -3px;" src="pict_11.png" alt="image" width="406" height="406"/></p></td></tr></table></blockquote><div class="navsetbottom"><span class="navleft"><form class="searchform"><input class="searchbox" style="color: #888;" type="text" value="...search manuals..." title="Enter a search string to search the manuals" onkeypress="return DoSearchKey(event, this, &quot;6.1&quot;, &quot;../&quot;);" onfocus="this.style.color=&quot;black&quot;; this.style.textAlign=&quot;left&quot;; if (this.value == &quot;...search manuals...&quot;) this.value=&quot;&quot;;" onblur="if (this.value.match(/^ *$/)) { this.style.color=&quot;#888&quot;; this.style.textAlign=&quot;center&quot;; this.value=&quot;...search manuals...&quot;; }"/></form>&nbsp;&nbsp;<a href="../index.html" title="up to the documentation top" data-pltdoc="x" onclick="return GotoPLTRoot(&quot;6.1&quot;);">top</a></span><span class="navright">&nbsp;&nbsp;<a href="index.html" title="backward to &quot;Plot: Graph Plotting&quot;" data-pltdoc="x">&larr; prev</a>&nbsp;&nbsp;<a href="index.html" title="up to &quot;Plot: Graph Plotting&quot;" data-pltdoc="x">up</a>&nbsp;&nbsp;<a href="plotting.html" title="forward to &quot;2 2D and 3D Plotting Procedures&quot;" data-pltdoc="x">next &rarr;</a></span>&nbsp;</div></div></div><div id="contextindicator">&nbsp;</div></body></html>