Warning, /education/kmplot/doc/index.docbook is written in an unsupported language. File is not indexed.
0001 <?xml version="1.0" ?> 0002 <!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN" "dtd/kdedbx45.dtd" [ 0003 <!ENTITY % addindex "IGNORE"> 0004 <!ENTITY % English "INCLUDE"><!-- change language only here --> 0005 ]> 0006 0007 <book id="kmplot" lang="&language;"> 0008 0009 <bookinfo> 0010 <title>The &kmplot; Handbook</title> 0011 <authorgroup> 0012 <author> 0013 <firstname>Klaus-Dieter</firstname> 0014 <surname>Möller</surname> 0015 <affiliation> 0016 <address>&Klaus-Dieter.Moeller.mail;</address> 0017 </affiliation> 0018 </author> 0019 <author> 0020 &Philip.Rodrigues; &Philip.Rodrigues.mail; 0021 </author> 0022 <author> 0023 <firstname>David</firstname> 0024 <surname>Saxton</surname> 0025 </author> 0026 <!-- TRANS:ROLES_OF_TRANSLATORS --> 0027 </authorgroup> 0028 0029 <copyright> 0030 <year>2000</year><year>2001</year><year>2002</year> 0031 <holder>Klaus-Dieter Möller</holder> 0032 </copyright> 0033 0034 <copyright> 0035 <year>2003</year> 0036 <holder>&Philip.Rodrigues; &Philip.Rodrigues.mail;</holder> 0037 </copyright> 0038 0039 <copyright> 0040 <year>2006</year> 0041 <holder>David Saxton</holder> 0042 </copyright> 0043 0044 <legalnotice>&FDLNotice;</legalnotice> 0045 0046 <date>2021-01-05</date> 0047 <releaseinfo>1.3.0 (Applications 20.12)</releaseinfo> 0048 0049 <!-- Abstract about this handbook --> 0050 0051 <abstract> 0052 <para>&kmplot; is a mathematical function plotter by &kde;.</para> 0053 <para> <inlinemediaobject><imageobject><imagedata 0054 fileref="edu-logo.png" 0055 format="PNG"/></imageobject></inlinemediaobject> &kmplot; is part of 0056 the &kde;-EDU Project: <ulink 0057 url="https://edu.kde.org/">https://edu.kde.org/</ulink></para></abstract> 0058 0059 0060 <keywordset> 0061 <keyword>KDE</keyword> 0062 <keyword>KmPlot</keyword> 0063 <keyword>EDU</keyword> 0064 <keyword>education</keyword> 0065 <keyword>plotting</keyword> 0066 <keyword>math</keyword> 0067 </keywordset> 0068 0069 </bookinfo> 0070 0071 <chapter id="introduction"> 0072 <title>Introduction</title> 0073 0074 <para>&kmplot; is a mathematical function plotter by &kde;. 0075 It has a powerful built-in parser. You can plot different 0076 functions simultaneously and combine them to build new 0077 functions.</para> 0078 0079 <screenshot> 0080 <screeninfo>Examples</screeninfo> 0081 <mediaobject> 0082 <imageobject> 0083 <imagedata fileref="threeplots.png" format="PNG"/> 0084 </imageobject> 0085 <textobject> 0086 <phrase>Examples</phrase> 0087 </textobject> 0088 </mediaobject> 0089 </screenshot> 0090 0091 <para>&kmplot; supports several different types of plots:</para> 0092 <itemizedlist> 0093 <listitem><para>Explicit cartesian plots of the form y = f(x).</para></listitem> 0094 <listitem><para>Parametric plots, where the x and y components are specified as functions of an independent variable.</para></listitem> 0095 <listitem><para>Polar plots of the form r = r(&thgr;).</para></listitem> 0096 <listitem><para>Implicit plots, where the x and y coordinates are related by an expression.</para></listitem> 0097 <listitem><para>Explicit differential plots.</para></listitem> 0098 </itemizedlist> 0099 0100 <para>&kmplot; also provides some numerical and visual features like:</para> 0101 <itemizedlist> 0102 <listitem><para>Filling and calculating the area between the plot and the first axis.</para></listitem> 0103 <listitem><para>Finding maximum and minimum values.</para></listitem> 0104 <listitem><para>Changing function parameters dynamically.</para></listitem> 0105 <listitem><para>Plotting derivatives and integral functions.</para></listitem> 0106 </itemizedlist> 0107 0108 <para>These features help in learning the 0109 relationship between mathematical functions and their graphical 0110 representation in a coordinate system.</para> 0111 0112 </chapter> 0113 0114 <chapter id="first-steps"> 0115 <title>First Steps With &kmplot;</title> 0116 0117 <sect1 id="simple-function-plot"> 0118 <title>Simple Function Plot</title> 0119 0120 <para> 0121 In the sidebar on the left, there is the <guibutton>Create</guibutton> button with a drop down menu for creating new plots. 0122 Click on it, and select <guilabel>Cartesian Plot</guilabel>. The text box for editing the current equation will be focused. Replace the default text with 0123 <screen><userinput>y = x^2</userinput></screen> 0124 and press &Enter;. 0125 This will draw the plot of y = x<superscript>2</superscript> in the coordinate system. 0126 Clicking on the <guibutton>Create</guibutton> button again, select <guilabel>Cartesian Plot</guilabel>, and this time enter the text 0127 <screen><userinput>y = 5sin(x)</userinput></screen> 0128 to get another plot. 0129 </para> 0130 0131 <para> 0132 Drag and drop the item <userinput>y = 5sin(x)</userinput> in the left sidebar to clone the plot. Replace <userinput>sin</userinput> with <userinput>cos</userinput> to get the cosine plot of the same color. 0133 </para> 0134 0135 <para>Click on one of the lines you have just plotted. Now the crosshair 0136 becomes the color of the current plot and is attached to the it. You can 0137 use the mouse to move the crosshair along the plot. In the status 0138 bar at the bottom of the window the coordinates of the current 0139 position is displayed. Note that if the plot touches the horizontal axis the 0140 root will be displayed in the status bar, too.</para> 0141 0142 <para>Click the mouse again and the crosshair will be detached from 0143 the plot.</para> 0144 </sect1> 0145 0146 <sect1 id="edit-properties"> 0147 <title>Edit Properties</title> 0148 0149 <para>Let us make some changes to the function and change the color of 0150 the plot.</para> 0151 0152 <para>The <guilabel>Functions</guilabel> sidebar lists all the functions that you have plotted. 0153 If <guilabel>y = x^2</guilabel> isn't already selected, select it. 0154 Here you have access to a lot of options. Let us rename 0155 the function and move the plot 5 units down. Change the function 0156 equation to <screen><userinput>parabola(x) = x^2 - 5</userinput></screen> and hit enter. 0157 To select another color for the plot, click the <guilabel>Color</guilabel> button in the section 0158 <guilabel>Appearance</guilabel> at the bottom of the Functions sidebar and select a new color. 0159 <note> 0160 <para>All changes can be undone via <menuchoice><guimenu>Edit</guimenu><guimenuitem>Undo</guimenuitem> </menuchoice>.</para> 0161 </note> 0162 </para> 0163 </sect1> 0164 </chapter> 0165 0166 <chapter id="using-kmplot"> 0167 <title>Using &kmplot;</title> 0168 0169 <para>&kmplot; deals with several different types of functions, which can be written in function form or as an equation:</para> 0170 0171 <itemizedlist> 0172 <listitem><para>Cartesian plots can either be written as ⪚ <quote>y = x^2</quote>, where x has to be used as the variable; or as ⪚ <quote>f(a) = a^2</quote>, where the name of the variable is arbitrary.</para></listitem> 0173 <listitem><para>Parametric plots are similar to Cartesian plots. The x and y coordinates can be entered as equations in t, ⪚ <quote>x = sin(t)</quote>, <quote>y = cos(t)</quote>, or as functions, ⪚ <quote>f_x(s) = sin(s)</quote>, <quote>f_y(s) = cos(s)</quote>.</para></listitem> 0174 <listitem><para>Polar plots are also similar to Cartesian plots. They can be either be entered as an equation in &thgr;, ⪚ <quote>r = &thgr;</quote>, or as a function, ⪚ 0175 <quote>f(x) = x</quote>.</para></listitem> 0176 <listitem><para>For implicit plots, the name of the function is entered separately from the expression relating the x and y coordinates. If the x and y variables are specified via the function name (by entering ⪚<quote>f(a,b)</quote> as the function name), then these variables will be used. Otherwise, the letters x and y will be used for the variables.</para></listitem> 0177 <listitem><para>Explicit differential plots are differential equations whereby the highest derivative is given in terms of the lower derivatives. Differentiation is denoted by a prime ('). In function form, the equation will look like <quote>f''(x) = f' − f</quote>. In equation form, it will look like <quote>y'' = y' − y</quote>. Note that in both cases, the <quote>(x)</quote> part is not added to the lower order differential terms (so you would enter <quote>f'(x) = −f</quote> and not <quote>f'(x) = −f(x)</quote>).</para></listitem> 0178 </itemizedlist> 0179 0180 <para>All the equation entry boxes come with a button on the right. Clicking this invokes the advanced <guilabel>Equation Editor</guilabel> dialog, which provides: 0181 0182 <itemizedlist> 0183 <listitem> 0184 <para>A variety of mathematical symbols that can be used in equations, but aren't found on normal keyboards.</para> 0185 </listitem> 0186 <listitem> 0187 <para>The list of user constants and a button for editing them.</para> 0188 </listitem> 0189 <listitem> 0190 <para>The list of predefined functions. Note that if you have text already selected, it will be used as the function argument when a function is inserted. For example, if <quote>1 + x</quote> is selected in the equation <quote>y = 1 + x</quote>, and the sine function is chosen, then the equation will become <quote> y = sin(1+x)</quote>. 0191 </para> 0192 </listitem> 0193 </itemizedlist> 0194 </para> 0195 0196 <screenshot> 0197 <screeninfo>Here is a screenshot of the &kmplot; welcome window</screeninfo> 0198 <mediaobject> 0199 <imageobject> 0200 <imagedata fileref="main.png" format="PNG"/> 0201 </imageobject> 0202 <textobject> 0203 <phrase>Screenshot</phrase> 0204 </textobject> 0205 </mediaobject> 0206 </screenshot> 0207 0208 <sect1 id="function-types"> 0209 <title>Function Types</title> 0210 0211 <sect2 id="cartesian-functions"> 0212 <title>Cartesian Functions</title> 0213 <para>To enter an explicit function (&ie;, a function in the form y=f(x)) into &kmplot;, just enter it in the 0214 following form: 0215 <screen><userinput><replaceable>f</replaceable>(<replaceable>x</replaceable>) = <replaceable>expression</replaceable></userinput></screen> 0216 where: 0217 <itemizedlist> 0218 <listitem><para> 0219 <replaceable>f</replaceable> is the name of the function, and can be any 0220 string of letters and numbers.</para> 0221 </listitem> 0222 0223 <listitem><para> 0224 <replaceable>x</replaceable> is the horizontal coordinate, to be used in the expression 0225 following the equals sign. It is a dummy variable, so you can use any 0226 variable name you like to achieve the same effect.</para> 0227 </listitem> 0228 0229 <listitem> 0230 <para><replaceable>expression</replaceable> is the expression to be plotted, 0231 given in the appropriate syntax for &kmplot;. See <xref linkend="math-syntax"/>. 0232 </para> 0233 </listitem> 0234 0235 </itemizedlist> 0236 </para> 0237 </sect2> 0238 0239 <sect2 id="parametric-functions"> 0240 <title>Parametric Functions</title> 0241 <para>Parametric functions are those in which the x and y coordinates are 0242 defined by separate functions of another variable, often called t. To enter a 0243 parametric function in &kmplot;, follow the procedure as for a Cartesian 0244 function for each of the x and y functions. As with Cartesian functions, you may use any variable name you wish for the 0245 parameter.</para> 0246 <para>As an example, suppose you want to draw a circle, which has parametric 0247 equations x = sin(t), y = cos(t). After creating a parametric plot, enter the appropriate equations in the x and y boxes, &ie;, 0248 <userinput>f_x(t)=sin(t)</userinput> and 0249 <userinput>f_y(t)=cos(t)</userinput>. 0250 </para> 0251 <para>You can set some further options for the plot in the function editor: 0252 <variablelist> 0253 <varlistentry> 0254 <term><guilabel>Min:</guilabel></term> 0255 <term><guilabel>Max:</guilabel></term> 0256 <listitem> 0257 <para>These options control the range of the parameter t for which the function is plotted.</para> 0258 </listitem> 0259 </varlistentry> 0260 </variablelist> 0261 </para> 0262 </sect2> 0263 0264 <sect2 id="polar-functions"> 0265 <title>Functions in Polar Coordinates</title> 0266 0267 <para>Polar coordinates represent a point by its distance from the origin 0268 (usually called r), and the angle a line from the origin to the point makes 0269 with the horizontal axis (usually represented by &thgr; the Greek letter theta). To enter 0270 functions in polar coordinates, click the <guibutton>Create</guibutton> button and select <guilabel>Polar Plot</guilabel> from the list. 0271 In the definition box, complete the 0272 function definition, including the name of the theta variable you want 0273 to use, ⪚, to draw the Archimedes' spiral r = &thgr;, enter: 0274 <screen><userinput>r(&thgr;) = &thgr;</userinput></screen> 0275 Note that you can use any name for the theta variable, so 0276 <quote>r(t) = t</quote> or <quote>f(x) = x</quote> will produce exactly the same output. 0277 </para> 0278 </sect2> 0279 0280 <sect2 id="implicit-functions"> 0281 <title>Implicit Functions</title> 0282 0283 <para>An implicit expression relates the x and y coordinates as an equality. To create a circle, for example, 0284 click the <guibutton>Create</guibutton> button and select <guilabel>Implicit Plot</guilabel> from the list. 0285 Then, enter into the equation box (below the function name box) the following: 0286 <screen><userinput>x^2 + y^2 = 25</userinput></screen> 0287 </para> 0288 </sect2> 0289 0290 <sect2 id="differential-functions"> 0291 <title>Differential Functions</title> 0292 0293 <para>&kmplot; can plot explicit differential equations. These are equations of the form 0294 y<superscript>(n)</superscript> = F(x,y',y'',...,y<superscript>(n−1)</superscript>), where y<superscript>k</superscript> is the k<superscript>th</superscript> derivative of y(x). &kmplot; can only interpret the derivative order as the number of primes following the function name. 0295 0296 To draw a sinusoidal curve, for example, you would use the differential equation 0297 <userinput>y'' = − y</userinput> or <userinput>f''(x) = −f</userinput>. 0298 </para> 0299 0300 <para>However, a differential equation on its own isn't enough to determine a plot. Each curve in the diagram is generated by a combination of the differential equation and the initial conditions. You can edit the initial conditions by clicking on the <guilabel>Initial Conditions</guilabel> tab when a differential equation is selected. The number of columns provided for editing the initial conditions is dependent on the order of the differential equation. 0301 </para> 0302 0303 <para>You can set some further options for the plot in the function editor: 0304 <variablelist> 0305 <varlistentry> 0306 <term><guilabel>Step:</guilabel></term> 0307 <listitem> 0308 <para>The step value in the precision box is used in numerically solving the differential equation (using the Runge Kutta method). Its value is the maximum step size used; a smaller step size may be used if part of the differential plot is zoomed in close enough.</para> 0309 </listitem> 0310 </varlistentry> 0311 </variablelist> 0312 </para> 0313 0314 </sect2> 0315 </sect1> 0316 0317 <sect1 id="combining-functions"> 0318 <title>Combining Functions</title> 0319 <para>Functions can be combined to produce new ones. Simply enter the functions 0320 after the equals sign in an expression as if the functions were variables. For 0321 example, if you have defined functions f(x) and g(x), you can plot the sum of f 0322 and g with: 0323 <screen><userinput>sum(x) = f(x) + g(x)</userinput></screen> 0324 </para> 0325 </sect1> 0326 0327 <sect1 id="function-appearance"> 0328 <title>Changing the appearance of functions</title> 0329 0330 <para>To change the appearance of a function's graph on the main plot 0331 window, select the function in the <guilabel>Functions</guilabel> sidebar. 0332 You can change the plot's line width, color and many other aspects by clicking on the 0333 <guibutton>Color:</guibutton> or <guibutton>Advanced...</guibutton> 0334 button at the bottom of the section <guilabel>Appearance</guilabel>. 0335 </para> 0336 0337 <para> 0338 If you are editing a Cartesian function, the function editor will have three tabs. 0339 In the first one you specify the equation of the function. 0340 The <guilabel>Derivatives</guilabel> tab lets you draw the first and second derivative to the function. 0341 With the <guilabel>Integral</guilabel> tab you can draw the integral of the function. 0342 </para> 0343 </sect1> 0344 0345 <sect1 id="popupmenu"> 0346 <title>Popup menu</title> 0347 <screenshot> 0348 <screeninfo>Graph right-click popup menu</screeninfo> 0349 <mediaobject> 0350 <imageobject> 0351 <imagedata fileref="popup.png" format="PNG"/> 0352 </imageobject> 0353 <textobject> 0354 <phrase>Graph right-click popup menu</phrase> 0355 </textobject> 0356 </mediaobject> 0357 </screenshot> 0358 0359 <para>When right-clicking on a plot function or a single-point parametric plot function a popup menu will appear. 0360 In the menu there are five items available:</para> 0361 0362 <variablelist> 0363 <varlistentry> 0364 <term><menuchoice><guimenuitem>Edit</guimenuitem> 0365 </menuchoice></term> 0366 <listitem> 0367 <para>Selects the function in the <guilabel>Functions</guilabel> sidebar for editing.</para> 0368 </listitem> 0369 </varlistentry> 0370 0371 <varlistentry> 0372 <term><menuchoice><guimenuitem>Hide</guimenuitem> 0373 </menuchoice></term> 0374 <listitem> 0375 <para>Hides the selected graph. Other plots of the graph's function will still be shown.</para> 0376 </listitem> 0377 </varlistentry> 0378 0379 <varlistentry> 0380 <term><menuchoice><guimenuitem>Remove</guimenuitem> 0381 </menuchoice></term> 0382 <listitem> 0383 <para>Removes the function. All its graphs will disappear.</para> 0384 </listitem> 0385 </varlistentry> 0386 <varlistentry> 0387 <term><menuchoice><guimenuitem>Animate Plot...</guimenuitem> 0388 </menuchoice></term> 0389 <listitem> 0390 <para>Displays the <guilabel>Parameter Animator</guilabel> dialog.</para> 0391 </listitem> 0392 </varlistentry> 0393 <varlistentry> 0394 <term><menuchoice><guimenuitem>Calculator</guimenuitem> 0395 </menuchoice></term> 0396 <listitem> 0397 <para>Opens the <guilabel>Calculator</guilabel> dialog.</para> 0398 </listitem> 0399 </varlistentry> 0400 </variablelist> 0401 0402 <para>Depending on the plot type, there will also be up to five tools available:</para> 0403 0404 <variablelist> 0405 <varlistentry> 0406 <term><menuchoice><guimenuitem>Copy (x, y)</guimenuitem> 0407 </menuchoice></term> 0408 <listitem> 0409 <para>Copies the current value on the plot to the system clipboard. 0410 This tool can be useful for creating tables of function values outside of &kmplot;. 0411 </para> 0412 </listitem> 0413 </varlistentry> 0414 0415 <varlistentry> 0416 <term><menuchoice><guimenuitem>Copy Root Value</guimenuitem> 0417 </menuchoice></term> 0418 <listitem> 0419 <para>Copies the root <literal>x</literal> value to the system clipboard. 0420 Only up to the first five digits after the decimal point can be copied. 0421 Use some <ulink url="https://en.wikipedia.org/wiki/Computer_algebra_system">computer algebra system</ulink> to determine this root with arbitrary precision. 0422 This tool is only available when the current tracking position is close to a root. 0423 </para> 0424 </listitem> 0425 </varlistentry> 0426 0427 <varlistentry> 0428 <term><menuchoice><guimenuitem>Plot Area...</guimenuitem> 0429 </menuchoice></term> 0430 <listitem> 0431 <para>Select the minimum and maximum horizontal values for the graph in the new dialog that appears. 0432 Calculates the integral and draws the area between the graph and the horizontal axis in the 0433 selected range in the color of the graph. 0434 </para> 0435 </listitem> 0436 </varlistentry> 0437 0438 <varlistentry> 0439 <term><menuchoice><guimenuitem>Find Minimum...</guimenuitem> 0440 </menuchoice></term> 0441 <listitem> 0442 <para> 0443 Find the minimum value of the graph in a specified range. The 0444 selected graph will be highlighted in the dialog that appears. Enter 0445 the lower and upper boundaries of the region in which you want to 0446 search for a minimum. 0447 </para> 0448 <para> 0449 Note: You can also tell the plot to visually show the extreme points in the <guilabel>Plot Appearance</guilabel> dialog, accessible in the <guilabel>Functions</guilabel> sidebar by clicking on <guibutton>Advanced...</guibutton>. 0450 </para> 0451 </listitem> 0452 </varlistentry> 0453 0454 <varlistentry> 0455 <term><menuchoice><guimenuitem>Find Maximum...</guimenuitem> 0456 </menuchoice></term> 0457 <listitem> 0458 <para>This is the same as <guimenuitem>Find Minimum...</guimenuitem> above, but finds the maximum value instead of the minimum value.</para> 0459 </listitem> 0460 </varlistentry> 0461 0462 </variablelist> 0463 </sect1> 0464 0465 </chapter> 0466 0467 <chapter id="configuration"> 0468 <title>Configuring &kmplot;</title> 0469 <para>To access the &kmplot; configuration 0470 dialog, select <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure 0471 &kmplot;...</guimenuitem></menuchoice> menu item. 0472 The settings for <guimenuitem>Constants...</guimenuitem> can only be changed 0473 from the <guimenu>Edit</guimenu> menu and the <guimenuitem>Coordinate System...</guimenuitem> only 0474 from the <guimenu>View</guimenu> menu.</para> 0475 0476 <sect1 id="general-config"> 0477 <title>General Configuration</title> 0478 0479 <screenshot> 0480 <screeninfo>Screenshot of the General Settings dialog</screeninfo> 0481 <mediaobject> 0482 <imageobject> 0483 <imagedata fileref="settings-general.png" format="PNG"/> 0484 </imageobject> 0485 <textobject> 0486 <phrase>Screenshot of the General Settings dialog</phrase> 0487 </textobject> 0488 </mediaobject> 0489 </screenshot> 0490 0491 <para>Here you can set global settings which automatic will be saved when you exit &kmplot;. You can set angle-mode (radians and degrees), zoom in and zoom out factors for zooming using &Ctrl; with mouse wheel or the <link linkend="a-view-menu">corresponding menu items</link>, and whether to show advanced plot tracing.</para> 0492 </sect1> 0493 0494 <sect1 id="diagram-config"> 0495 <title>Diagram Configuration</title> 0496 0497 <screenshot> 0498 <screeninfo>Screenshot of the Diagram Appearance dialog</screeninfo> 0499 <mediaobject> 0500 <imageobject> 0501 <imagedata fileref="settings-diagram.png" format="PNG"/> 0502 </imageobject> 0503 <textobject> 0504 <phrase>Screenshot of the Diagram Appearance dialog</phrase> 0505 </textobject> 0506 </mediaobject> 0507 </screenshot> 0508 0509 <para>You can set the <guilabel>Grid Style</guilabel> to one of four options: 0510 <variablelist> 0511 0512 <varlistentry> 0513 <term><guilabel>None</guilabel></term> 0514 <listitem> 0515 <para>No gridlines are drawn on the plot area.</para> 0516 </listitem> 0517 </varlistentry> 0518 0519 <varlistentry> 0520 <term><guilabel>Lines</guilabel></term> 0521 <listitem> 0522 <para>Straight lines form a grid of squares on the plot area.</para> 0523 </listitem> 0524 </varlistentry> 0525 0526 <varlistentry> 0527 <term><guilabel>Crosses</guilabel></term> 0528 <listitem> 0529 <para>Crosses are drawn to indicate points where x and y have integer values 0530 (⪚, (1,1), (4,2) &etc;).</para> 0531 </listitem> 0532 </varlistentry> 0533 0534 <varlistentry> 0535 <term><guilabel>Polar</guilabel></term> 0536 <listitem> 0537 <para>Lines of constant radius and of constant angle are drawn on the plot 0538 area.</para> 0539 </listitem> 0540 </varlistentry> 0541 </variablelist> 0542 </para> 0543 0544 <para>Other options for the diagram appearance can also be configured: 0545 <variablelist> 0546 <varlistentry> 0547 <term><guilabel>Axis Labels</guilabel></term> 0548 <listitem> 0549 <para>This section sets labels for the horizontal and vertical axes.</para> 0550 </listitem> 0551 </varlistentry> 0552 0553 <varlistentry> 0554 <term><guilabel>Axis widths:</guilabel></term> 0555 <listitem> 0556 <para>Sets the width of the lines representing the axes.</para> 0557 </listitem> 0558 </varlistentry> 0559 0560 <varlistentry> 0561 <term><guilabel>Line width:</guilabel></term> 0562 <listitem> 0563 <para>Sets the width of the lines used for drawing the grid.</para> 0564 </listitem> 0565 </varlistentry> 0566 0567 <varlistentry> 0568 <term><guilabel>Tic width:</guilabel></term> 0569 <listitem> 0570 <para>Sets the width of the lines representing tics on the axes.</para> 0571 </listitem> 0572 </varlistentry> 0573 0574 <varlistentry> 0575 <term><guilabel>Tic length:</guilabel></term> 0576 <listitem> 0577 <para>Sets the length of the lines representing tics on the axes.</para> 0578 </listitem> 0579 </varlistentry> 0580 0581 <varlistentry> 0582 <term><guilabel>Show labels</guilabel></term> 0583 <listitem> 0584 <para>If checked, the names of the axes are shown on the plot and the axes' tics are labeled.</para> 0585 </listitem> 0586 </varlistentry> 0587 0588 <varlistentry> 0589 <term><guilabel>Show axes</guilabel></term> 0590 <listitem> 0591 <para>If checked, the axes are visible.</para> 0592 </listitem> 0593 </varlistentry> 0594 0595 <varlistentry> 0596 <term><guilabel>Show arrows</guilabel></term> 0597 <listitem> 0598 <para>If checked, the axes are displayed with arrows at their ends.</para> 0599 </listitem> 0600 </varlistentry> 0601 0602 </variablelist> 0603 0604 </para> 0605 </sect1> 0606 0607 <sect1 id="colors-config"> 0608 <title>Colors Configuration</title> 0609 0610 <screenshot> 0611 <screeninfo>Screenshot of the Colors dialog</screeninfo> 0612 <mediaobject> 0613 <imageobject> 0614 <imagedata fileref="settings-colors.png" format="PNG"/> 0615 </imageobject> 0616 <textobject> 0617 <phrase>Screenshot of the Colors dialog</phrase> 0618 </textobject> 0619 </mediaobject> 0620 </screenshot> 0621 0622 <para> 0623 In the <guilabel>Coords</guilabel> section of the <guilabel>Colors</guilabel> 0624 configuration dialog, you can change the colors of the axes, the grid and the background of the 0625 main &kmplot; area. 0626 </para> 0627 0628 <para>The <guilabel>Default Function Colors</guilabel> control which colors are cycled through when creating new functions.</para> 0629 </sect1> 0630 0631 <sect1 id="font-config"> 0632 <title>Fonts Configuration</title> 0633 0634 <screenshot> 0635 <screeninfo>Screenshot of the Fonts dialog</screeninfo> 0636 <mediaobject> 0637 <imageobject> 0638 <imagedata fileref="settings-fonts.png" format="PNG"/> 0639 </imageobject> 0640 <textobject> 0641 <phrase>Screenshot of the Fonts dialog</phrase> 0642 </textobject> 0643 </mediaobject> 0644 </screenshot> 0645 0646 <variablelist> 0647 0648 <varlistentry> 0649 <term><guilabel>Axes labels:</guilabel></term> 0650 <listitem> 0651 <para>The font used for drawing the axis numbers and x/y labels.</para> 0652 </listitem> 0653 </varlistentry> 0654 0655 <varlistentry> 0656 <term><guilabel>Diagram labels:</guilabel></term> 0657 <listitem> 0658 <para>The font used for drawing diagram labels (⪚, those showing the plot name or extreme points).</para> 0659 </listitem> 0660 </varlistentry> 0661 <varlistentry> 0662 <term><guilabel>Header table:</guilabel></term> 0663 <listitem> 0664 <para>The font used for drawing the header when printing a plot.</para> 0665 </listitem> 0666 </varlistentry> 0667 0668 </variablelist> 0669 </sect1> 0670 0671 </chapter> 0672 0673 <chapter id="reference"> 0674 <title>&kmplot; Reference</title> 0675 0676 <sect1 id="func-syntax"> 0677 <title>Function Syntax</title> 0678 0679 <para>Some syntax rules must be complied with:</para> 0680 0681 <screen> 0682 <userinput>name(var1[, var2])=term [;extensions]</userinput> 0683 </screen> 0684 0685 0686 <variablelist> 0687 <varlistentry> 0688 <term>name</term> 0689 <listitem> 0690 0691 <para>The function name. If the first character is <quote>r</quote> 0692 the parser assumes that you are using polar coordinates. If the first 0693 character is <quote>x</quote> (for instance <quote>xfunc</quote>) the 0694 parser expects a second function with a leading <quote>y</quote> (here 0695 <quote>yfunc</quote>) to define the function in parametric form. 0696 </para> 0697 </listitem> 0698 </varlistentry> 0699 <varlistentry> 0700 <term>var1</term> 0701 <listitem><para>The function's variable.</para></listitem> 0702 </varlistentry> 0703 <varlistentry> 0704 <term>var2</term> 0705 <listitem><para> The function <quote>group parameter</quote>. It must be 0706 separated from the function's variable by a comma. You can use the group 0707 parameter to, for example, plot a number of graphs from one function. The parameter values can be selected manually or you can choose to have a slider bar that controls one parameter. By changing the value of the slider the value parameter will be changed. The slider can be set to an integer between 0 and 100.</para></listitem> 0708 </varlistentry> 0709 <varlistentry> 0710 <term>term</term> 0711 <listitem><para>The expression defining the function.</para></listitem> 0712 </varlistentry> 0713 </variablelist> 0714 </sect1> 0715 0716 <sect1 id="func-predefined"> 0717 <title>Predefined Function Names and Constants</title> 0718 0719 <para> 0720 All the predefined functions and constants that &kmplot; knows can be shown by 0721 selecting <menuchoice><guimenu>Help</guimenu><guimenuitem>Predefined Math Functions</guimenuitem> 0722 </menuchoice>, which displays this page of &kmplot;'s handbook. 0723 </para> 0724 0725 <para> 0726 These functions and constants and even all user defined functions can 0727 be used to determine the axes settings as well. See <xref linkend="axes-config"/>. 0728 </para> 0729 0730 <sect2 id="trigonometric-functions"> 0731 <title>Trigonometric Functions</title> 0732 0733 <para> 0734 By default, the trigonometric functions work in radians. However, this can be changed via <menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure &kmplot;...</guimenuitem></menuchoice> menu item. 0735 </para> 0736 0737 <variablelist> 0738 0739 <varlistentry> 0740 <term>sin(x)</term> 0741 <term>arcsin(x)</term> 0742 <term>cosec(x)</term> 0743 <term>arccosec(x)</term> 0744 <listitem><para>The sine, inverse sine, cosecant and inverse cosecant respectively.</para></listitem> 0745 </varlistentry> 0746 0747 <varlistentry> 0748 <term>cos(x)</term> 0749 <term>arccos(x)</term> 0750 <term>sec(x)</term> 0751 <term>arcsec(x)</term> 0752 <listitem><para>The cosine, inverse cosine, secant and inverse secant respectively.</para></listitem> 0753 </varlistentry> 0754 0755 <varlistentry> 0756 <term>tan(x)</term> 0757 <term>arctan(x)</term> 0758 <term>cot(x)</term> 0759 <term>arccot(x)</term> 0760 <listitem><para>The tangent, inverse tangent, cotangent and inverse cotangent respectively.</para></listitem> 0761 </varlistentry> 0762 0763 </variablelist> 0764 </sect2> 0765 0766 <sect2 id="hyperbolic-functions"> 0767 <title>Hyperbolic Functions</title> 0768 <para>The Hyperbolic Functions.</para> 0769 0770 <variablelist> 0771 0772 <varlistentry> 0773 <term>sinh(x)</term> 0774 <term>arcsinh(x)</term> 0775 <term>cosech(x)</term> 0776 <term>arccosech(x)</term> 0777 <listitem><para>The hyperbolic sine, inverse sine, cosecant and inverse cosecant respectively.</para></listitem> 0778 </varlistentry> 0779 0780 <varlistentry> 0781 <term>cosh(x)</term> 0782 <term>arccosh(x)</term> 0783 <term>sech(x)</term> 0784 <term>arcsech(x)</term> 0785 <listitem><para>The hyperbolic cosine, inverse cosine, secant and inverse secant respectively.</para></listitem> 0786 </varlistentry> 0787 0788 <varlistentry> 0789 <term>tanh(x)</term> 0790 <term>arctanh(x)</term> 0791 <term>coth(x)</term> 0792 <term>arccoth(x)</term> 0793 <listitem><para>The hyperbolic tangent, inverse tangent, cotangent and inverse cotangent respectively.</para></listitem> 0794 </varlistentry> 0795 0796 </variablelist> 0797 </sect2> 0798 0799 <sect2 id="other-functions"> 0800 <title>Other Functions</title> 0801 <variablelist> 0802 0803 <varlistentry> 0804 <term>sqr(x)</term> 0805 <listitem><para>The square x^2 of x.</para></listitem> 0806 </varlistentry> 0807 0808 <varlistentry> 0809 <term>sqrt(x)</term> 0810 <listitem><para>The square root of x.</para></listitem> 0811 </varlistentry> 0812 0813 <varlistentry> 0814 <term>sign(x)</term> 0815 <listitem><para>The sign of x. Returns 1 if x is positive, 0 if x is zero, or −1 if x is negative.</para></listitem> 0816 </varlistentry> 0817 0818 <varlistentry> 0819 <term>H(x)</term> 0820 <listitem><para>The Heaviside Step Function. Returns 1 if x is positive, 0.5 if x is zero, or 0 if x is negative.</para></listitem> 0821 </varlistentry> 0822 0823 <varlistentry> 0824 <term>exp(x)</term> 0825 <listitem><para>The exponent e^x of x.</para></listitem> 0826 </varlistentry> 0827 0828 <varlistentry> 0829 <term>ln(x)</term> 0830 <listitem><para>The natural logarithm (inverse exponent) of x.</para></listitem> 0831 </varlistentry> 0832 0833 <varlistentry> 0834 <term>log(x)</term> 0835 <listitem><para>The logarithm of x to base 10.</para></listitem> 0836 </varlistentry> 0837 0838 <varlistentry> 0839 <term>abs(x)</term> 0840 <listitem><para>The absolute value of x.</para></listitem> 0841 </varlistentry> 0842 0843 <varlistentry> 0844 <term>floor(x)</term> 0845 <listitem><para>Rounds x to closest integer less than or equal to x.</para></listitem> 0846 </varlistentry> 0847 0848 <varlistentry> 0849 <term>ceil(x)</term> 0850 <listitem><para>Rounds x to the closest integer greater than or equal to x.</para></listitem> 0851 </varlistentry> 0852 0853 <varlistentry> 0854 <term>round(x)</term> 0855 <listitem><para>Rounds x to the closest integer.</para></listitem> 0856 </varlistentry> 0857 0858 <varlistentry> 0859 <term>gamma(x)</term> 0860 <listitem><para>The gamma function.</para></listitem> 0861 </varlistentry> 0862 0863 <varlistentry> 0864 <term>factorial(x)</term> 0865 <listitem><para>The factorial of x.</para></listitem> 0866 </varlistentry> 0867 0868 <varlistentry> 0869 <term>min(x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>)</term> 0870 <listitem><para>Returns the minimum of the set of numbers {x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>}.</para></listitem> 0871 </varlistentry> 0872 0873 <varlistentry> 0874 <term>max(x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>)</term> 0875 <listitem><para>Returns the maximum of the set of numbers {x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>}.</para></listitem> 0876 </varlistentry> 0877 0878 <varlistentry> 0879 <term>mod(x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>)</term> 0880 <listitem><para>Returns the modulus (Euclidean length) of the set of numbers {x<subscript>1</subscript>,x<subscript>2</subscript>,...,x<subscript>n</subscript>}.</para></listitem> 0881 </varlistentry> 0882 0883 <!-- TODO: Legendre polynomials --> 0884 0885 </variablelist> 0886 </sect2> 0887 0888 <sect2> 0889 <title>Predefined Constants</title> 0890 <variablelist> 0891 0892 <varlistentry> 0893 <term>pi</term> 0894 <term>&pgr;</term> 0895 <listitem> 0896 <para>Constants representing &pgr; (3.14159...).</para> 0897 </listitem> 0898 </varlistentry> 0899 0900 <varlistentry> 0901 <term>e</term> 0902 <listitem> 0903 <para>Constant representing Euler's Number e (2.71828...).</para> 0904 </listitem> 0905 </varlistentry> 0906 0907 </variablelist> 0908 </sect2> 0909 </sect1> 0910 0911 <sect1 id="func-extension"> <!--FIXME does this still work--> 0912 <title>Extensions</title> 0913 <para>An extension for a function is specified by entering a semicolon, 0914 followed by the extension, after the function definition. The extension can be entered by using the &DBus; method <quote><methodname>parser addFunction</methodname></quote>. None of the extensions are available 0915 for parametric functions but N and D[a,b] work for polar functions too. For example: 0916 <screen> 0917 <userinput> 0918 f(x)=x^2; A1 0919 </userinput> 0920 </screen> 0921 will show the graph y=x<superscript>2</superscript> with its first 0922 derivative. Supported extensions are described below: 0923 <variablelist> 0924 <varlistentry> 0925 <term>N</term> 0926 <listitem> 0927 <para> 0928 The function will be stored but not be drawn. 0929 It can be used like any other user-defined or predefined function. 0930 </para> 0931 </listitem> 0932 </varlistentry> 0933 <varlistentry> 0934 <term>A1</term> 0935 <listitem> 0936 <para> 0937 The graph of the derivative of the function will be drawn 0938 additionally with the same color but less line width. 0939 </para> 0940 </listitem> 0941 </varlistentry> 0942 <varlistentry> 0943 <term>A2</term> 0944 <listitem> 0945 <para> 0946 The graph of the second derivative of the function will be 0947 drawn additionally with the same color but less line width. 0948 </para> 0949 </listitem> 0950 </varlistentry> 0951 <varlistentry> 0952 <term>D[a,b]</term> 0953 <listitem> 0954 <para> 0955 Sets the domain for which the function will be displayed. 0956 </para> 0957 </listitem> 0958 </varlistentry> 0959 <varlistentry> 0960 <term>P[a{,b...}]</term> 0961 <listitem> 0962 <para> 0963 Give a set of values of a group parameter for which the function should be 0964 displayed. For example: <userinput>f(x,k)=k*x;P[1,2,3]</userinput> will plot 0965 the functions f(x)=x, f(x)=2*x and f(x)=3*x. You can also use functions as the 0966 arguments to the P option. 0967 </para> 0968 </listitem> 0969 </varlistentry> 0970 </variablelist> 0971 </para> 0972 <para> 0973 Please note that you can do all of these operations by editing the items in the <guilabel>Derivatives</guilabel> tab, the <guilabel>Custom plot range</guilabel> section and the <guilabel>Parameters</guilabel> section in the <guilabel>Functions</guilabel> sidebar too. 0974 </para> 0975 </sect1> 0976 0977 <sect1 id="math-syntax"> 0978 <title>Mathematical Syntax</title> 0979 <para>&kmplot; uses a common way of expressing mathematical functions, so you 0980 should have no trouble working it out. The operators &kmplot; understands are, 0981 in order of decreasing precedence: 0982 <variablelist> 0983 0984 <varlistentry> 0985 <term>^</term> 0986 <listitem><para>The caret symbol performs exponentiation. ⪚, 0987 <userinput>2^4</userinput> returns 16.</para> 0988 </listitem> 0989 </varlistentry> 0990 0991 <varlistentry> 0992 <term>*</term> 0993 <term>/</term> 0994 <listitem> 0995 <para>The asterisk and slash symbols perform multiplication and 0996 division . ⪚, 0997 <userinput>3*4/2</userinput> returns 6.</para> 0998 </listitem> 0999 </varlistentry> 1000 1001 <varlistentry> 1002 <term>+</term> 1003 <term>−</term> 1004 <listitem><para>The plus and minus symbols perform addition and 1005 subtraction. ⪚, <userinput>1+3−2</userinput> returns 2.</para> 1006 </listitem> 1007 </varlistentry> 1008 1009 <varlistentry> 1010 <term><</term> 1011 <term>></term> 1012 <term>≤</term> 1013 <term>≥</term> 1014 <listitem><para>Comparison operators. They return 1 if the expression is true, otherwise they return 0. 1015 ⪚, <userinput>1 ≤ 2</userinput> returns 1.</para> 1016 </listitem> 1017 </varlistentry> 1018 1019 <varlistentry> 1020 <term>√</term> 1021 <listitem><para>The square root of a number. 1022 ⪚, <userinput>√4</userinput> returns 2.</para> 1023 </listitem> 1024 </varlistentry> 1025 1026 <varlistentry> 1027 <term>|x|</term> 1028 <listitem><para>The absolute value of x. ⪚, 1029 <userinput>|−4|</userinput> returns 4.</para> 1030 </listitem> 1031 </varlistentry> 1032 1033 <varlistentry> 1034 <term>±</term> 1035 <term></term> 1036 <listitem><para>Each plus-minus sign gives two sets of plots: one in which the plus is taken, and one in which the minus is taken.⪚. 1037 <userinput>y = ±sqrt(1−x^2)</userinput> will draw a circle. 1038 These, therefore, cannot be used in constants.</para> 1039 </listitem> 1040 </varlistentry> 1041 1042 1043 1044 </variablelist> 1045 </para> 1046 <para> 1047 Note the precedence, which means that if parentheses are not used, 1048 exponentiation is performed before multiplication/division, which is performed 1049 before addition/subtraction. So <userinput>1+2*4^2</userinput> returns 33, and 1050 not, say 144. To override this, use parentheses. To use the above example, 1051 <userinput>((1+2)*4)^2</userinput> <emphasis>will</emphasis> return 144. 1052 </para> 1053 </sect1> 1054 1055 <sect1 id="coord-area"><title>Plotting Area</title> 1056 <para> 1057 By default, explicitly given functions are plotted for the whole of the visible part of the 1058 horizontal axis. You can specify an other range in the edit-dialog for the function. 1059 If the plotting area contains the resulting point it is connected to the last 1060 drawn point by a line. 1061 </para> 1062 <para> 1063 Parametric and polar functions have a default plotting range of 0 to 2&pgr;. 1064 This plotting range can also be changed in the <guilabel>Functions</guilabel> sidebar. 1065 </para> 1066 </sect1> 1067 1068 <sect1 id="coord-cross"> 1069 <title>Crosshair Cursor</title> 1070 <para> 1071 While the mouse cursor is over the plotting area the cursor changes to a crosshair. The current coordinates can be seen at the intersections with the coordinate axes and also in the status bar at the bottom of the main window. 1072 </para> 1073 <para> 1074 You can trace a function's values more precisely by clicking onto or next to a graph. The selected function is shown in the status bar in the right column. The crosshair then will be caught and be colored in the same color as the graph. If the graph has the same color as the background color, the crosshair will have the inverted color of the background. When moving the mouse or pressing the keys &Left; or &Right; the crosshair will follow the function and you see the current horizontal and vertical value. If the crosshair is close to vertical axis, the root-value is shown in the statusbar. You can switch function with the &Up; and &Down; keys. A second click anywhere in the window or pressing any non-navigating key will leave this trace mode. 1075 </para> 1076 <para> 1077 For more advanced tracing, open up the configuration dialog, and select <guilabel>Draw tangent and normal when tracing</guilabel> from the <guilabel>General Settings</guilabel> page. This option will draw the tangent, normal and oscillating circle of the plot currently being traced. 1078 </para> 1079 1080 </sect1> 1081 1082 <sect1 id="coords-config"> 1083 <title>Coordinate System Configuration</title> 1084 <para>To open this dialog select <menuchoice><guimenu>View</guimenu><guimenuitem>Coordinate System...</guimenuitem></menuchoice> from the menubar.</para> 1085 <screenshot> 1086 <screeninfo>Screenshot of the Coordinate System dialog</screeninfo> 1087 <mediaobject> 1088 <imageobject> 1089 <imagedata fileref="settings-coords.png" format="PNG"/> 1090 </imageobject> 1091 <textobject> 1092 <phrase>Screenshot of the Coordinate System dialog</phrase> 1093 </textobject> 1094 </mediaobject> 1095 </screenshot> 1096 1097 <sect2 id="axes-config"> 1098 <title>Axes Configuration</title> 1099 <para> 1100 <variablelist> 1101 1102 <varlistentry> 1103 <term><guilabel>Horizontal axis Range</guilabel></term> 1104 <listitem> 1105 <para>Sets the range for the horizontal axis scale. 1106 Note that you can use the 1107 predefined functions and constants (see <xref linkend="func-predefined"/>) as 1108 the extremes of the range (⪚, set <guilabel>Min:</guilabel> to 1109 <userinput>2*pi</userinput>). You can even use functions you have defined to 1110 set the extremes of the axis range. For example, if you have defined a function 1111 <userinput>f(x) = x^2</userinput>, you could set <guilabel>Min:</guilabel> to 1112 <userinput>f(3)</userinput>, which would make the lower end of the range equal 1113 to 9.</para> 1114 </listitem> 1115 </varlistentry> 1116 1117 <varlistentry> 1118 <term><guilabel>Vertical axis Range</guilabel></term> 1119 <listitem> 1120 <para>Sets the range for the vertical axis. See <quote>Horizontal axis Range</quote> above.</para> 1121 </listitem> 1122 </varlistentry> 1123 1124 <varlistentry> 1125 <term><guilabel>Horizontal axis Grid Spacing</guilabel></term> 1126 <listitem> 1127 <para>This controls the spacing between grid lines in the horizontal direction. 1128 If <guilabel>Automatic</guilabel> is selected, then &kmplot; will try to find a grid line spacing of about two centimeters that is also numerically nice. 1129 If <guilabel>Custom:</guilabel> is selected, then you can enter the horizontal grid spacing. This value will be used regardless of the zoom. For example, if a value of 0.5 is entered, and the x range is 0 to 8, then 16 grid lines will be shown. 1130 </para> 1131 </listitem> 1132 </varlistentry> 1133 1134 <varlistentry> 1135 <term><guilabel>Vertical axis Grid Spacing</guilabel></term> 1136 <listitem> 1137 <para>This controls the spacing between grid lines in the vertical direction. 1138 See <quote>Horizontal axis Grid Spacing</quote> above. 1139 </para> 1140 </listitem> 1141 </varlistentry> 1142 1143 </variablelist> 1144 </para> 1145 1146 </sect2> 1147 </sect1> 1148 1149 <sect1 id="constants-config"> 1150 <title>Constants Configuration</title> 1151 <para>To open this dialog select <menuchoice><guimenu>Edit</guimenu><guimenuitem>Constants...</guimenuitem></menuchoice> from the menubar.</para> 1152 1153 <screenshot> 1154 <screeninfo>Screenshot of the Constants dialog</screeninfo> 1155 <mediaobject> 1156 <imageobject> 1157 <imagedata fileref="settings-constants.png" format="PNG"/> 1158 </imageobject> 1159 <textobject> 1160 <phrase>Screenshot of the Constants dialog</phrase> 1161 </textobject> 1162 </mediaobject> 1163 </screenshot> 1164 1165 <para> 1166 Constants can be used as part of an expression anywhere inside of &kmplot;. Each constant must have a name and a value. Some names are invalid, however, such as existing function names or existing constants. 1167 </para> 1168 1169 <para> 1170 There are two options that control the scope of a constant: 1171 1172 <variablelist> 1173 1174 <varlistentry> 1175 <term><guilabel>Document</guilabel></term> 1176 <listitem> 1177 <para>If you select the <guilabel>Document</guilabel> checkbox, then the Constant will be saved along with the current diagram when you save it to file. However, unless you have also selected the <guilabel>Global</guilabel> option, the constant will not be available between instances of &kmplot;.</para> 1178 </listitem> 1179 </varlistentry> 1180 1181 <varlistentry> 1182 <term><guilabel>Global</guilabel></term> 1183 <listitem> 1184 <para>If you select the <guilabel>Global</guilabel> checkbox, then the Constant's name and value will be written to &kde; settings (where it can 1185 also be used by &kcalc;). The constant will not be lost when &kmplot; is closed, and will be available again for use when &kmplot; is started again.</para> 1186 </listitem> 1187 </varlistentry> 1188 1189 </variablelist> 1190 </para> 1191 </sect1> 1192 1193 </chapter> 1194 1195 <chapter id="commands"> 1196 <title>Command Reference</title> 1197 1198 <sect1 id="menu"> 1199 <title>Menu Items</title> 1200 1201 <para>Apart from the common &kde; menus described in the <ulink url="help:/fundamentals/menus.html">Menu</ulink> 1202 chapter of the &kde; Fundamentals documentation &kmplot; has these application specific menu entries: 1203 </para> 1204 1205 <sect2 id="a-file-menu"> 1206 <title>The File Menu</title> 1207 <variablelist> 1208 1209 <varlistentry> 1210 <term> 1211 <menuchoice> 1212 <guimenu>File</guimenu> 1213 <guimenuitem>Export...</guimenuitem></menuchoice></term> 1214 <listitem><para><action>Exports</action> the plotted graphs to an image file in all formats supported by &kde;.</para></listitem> 1215 </varlistentry> 1216 <varlistentry> 1217 <term> 1218 <menuchoice> 1219 <guimenu>File</guimenu> 1220 <guimenuitem>Print...</guimenuitem> 1221 </menuchoice> 1222 </term> 1223 <listitem> 1224 <para><action>Opens</action> print configuration window. Press the <guibutton>Options >></guibutton> button then choose the <guilabel>KmPlot Options</guilabel> tab to configure options that are specific for &kmplot;.</para> 1225 </listitem> 1226 </varlistentry> 1227 <varlistentry> 1228 <term> 1229 <menuchoice> 1230 <guimenu>File</guimenu> 1231 <guimenuitem>Print Preview</guimenuitem> 1232 </menuchoice> 1233 </term> 1234 <listitem> 1235 <para><action>Shows</action> the preliminary image of the current plot as printed on the current default printer. Press the rightmost button on the toolbar of the print preview window to configure options that are specific for &kmplot;.</para> 1236 </listitem> 1237 </varlistentry> 1238 </variablelist> 1239 </sect2> 1240 1241 <sect2 id="a-edit-menu"> 1242 <title>The Edit Menu</title> 1243 <variablelist> 1244 <varlistentry> 1245 <term><menuchoice><guimenu>Edit</guimenu><guimenuitem>Constants...</guimenuitem> 1246 </menuchoice></term> 1247 <listitem><para>Displays the <guilabel>Constants Editor</guilabel> dialog box. See <xref linkend="constants-config"/>. 1248 </para> 1249 </listitem> 1250 </varlistentry> 1251 </variablelist> 1252 </sect2> 1253 1254 <sect2 id="a-view-menu"> 1255 <title>The View Menu</title> 1256 <para>The first three items in the menu are related to zooming.</para> 1257 <note> 1258 <para> 1259 The mouse wheel can also be used as a zoom control. To zoom in or out using the mouse, hold down the &Ctrl; key while you turn the mouse wheel. Each tick increases or decreases the zoom factor by the value defined in the <link linkend="general-config">&kmplot; General settings</link>. 1260 </para> 1261 </note> 1262 1263 <variablelist> 1264 <varlistentry> 1265 <term> 1266 <menuchoice> 1267 <shortcut> 1268 <keycombo action="simul">&Ctrl;<keycap>1</keycap></keycombo> 1269 </shortcut> 1270 <guimenu>View</guimenu> 1271 <guimenuitem>Zoom In</guimenuitem> 1272 </menuchoice> 1273 </term> 1274 <listitem> 1275 <para>This tool can be operator in two different manners. To zoom in on a point on the graph, click on it. To zoom in on a specific section of the graph, hold and drag the mouse to form a rectangle, which will be the new axes ranges when the mouse button is released.</para> 1276 </listitem> 1277 </varlistentry> 1278 1279 <varlistentry> 1280 <term> 1281 <menuchoice> 1282 <shortcut> 1283 <keycombo action="simul">&Ctrl;<keycap>2</keycap></keycombo> 1284 </shortcut> 1285 <guimenu>View</guimenu> 1286 <guimenuitem>Zoom Out</guimenuitem> 1287 </menuchoice> 1288 </term> 1289 <listitem> 1290 <para>The tool can also be used in two different manners. To zoom out and center on a point, click on that point. To fit the existing view into a rectangle, hold and drag the mouse to form that rectangle.</para></listitem> 1291 </varlistentry> 1292 1293 <varlistentry> 1294 <term> 1295 <menuchoice> 1296 <guimenu>View</guimenu> 1297 <guimenuitem>Fit Widget to Trigonometric Functions</guimenuitem> 1298 </menuchoice> 1299 </term> 1300 <listitem><para>The scale will be adapted to trigonometric functions. This works both for radians and degrees.</para></listitem> 1301 </varlistentry> 1302 1303 <varlistentry> 1304 <term><menuchoice><guimenu>View</guimenu><guimenuitem>Reset View</guimenuitem> 1305 </menuchoice></term> 1306 <listitem><para>Resets the view. 1307 </para> 1308 </listitem> 1309 </varlistentry> 1310 1311 <varlistentry> 1312 <term><menuchoice><guimenu>View</guimenu><guimenuitem>Coordinate System...</guimenuitem> 1313 </menuchoice></term> 1314 <listitem><para>Displays the <guilabel>Coordinate System</guilabel> dialog box. See <xref linkend="coords-config"/>. 1315 </para> 1316 </listitem> 1317 </varlistentry> 1318 1319 <varlistentry> 1320 <term><menuchoice><guimenu>View</guimenu> 1321 <guimenuitem>Show Sliders</guimenuitem> 1322 </menuchoice></term> 1323 <listitem> 1324 <para><action>Toggles</action> the visibility of the slider dialog. 1325 In the dialog move a slider to change the parameter of the function plot connected to it.</para> 1326 <para>Enable this on the Function tab and select one of the sliders to change the parameter value dynamically. The values vary from 0 (left) to 10 (right) by default, but can be changed in the slider dialog.</para> 1327 <para>For a small tutorial see <ulink url="https://userbase.kde.org/Special:MyLanguage/KmPlot/Using_Sliders">Using Sliders</ulink>.</para> 1328 <!--https://forum.kde.org/viewtopic.php?f=21&t=90183 kmplot slider examples 1329 KmPlot supports only one parameter. Feature request on bugs.kde.org: https://bugs.kde.org/show_bug.cgi?id=139097--> 1330 </listitem> 1331 </varlistentry> 1332 1333 </variablelist> 1334 </sect2> 1335 1336 <sect2 id="a-tools-menu"> 1337 <title>The Tools Menu</title> 1338 1339 <para>This menu contains some tools for the functions that can be useful:</para> 1340 1341 <variablelist> 1342 1343 <varlistentry> 1344 <term><menuchoice><guimenu>Tools</guimenu> 1345 <guimenuitem>Calculator</guimenuitem> 1346 </menuchoice></term> 1347 <listitem> 1348 <para>Opens the <guilabel>Calculator</guilabel> dialog.</para> 1349 </listitem> 1350 </varlistentry> 1351 1352 <varlistentry> 1353 <term><menuchoice><guimenu>Tools</guimenu> 1354 <guimenuitem>Plot Area...</guimenuitem> 1355 </menuchoice></term> 1356 <listitem> 1357 <para>Select a graph and the values of the horizontal axis in the new dialog that appears. 1358 Calculates the integral and draws the area between the graph and the horizontal axis in the 1359 range of the selected values in the color of the graph.</para> 1360 </listitem> 1361 </varlistentry> 1362 1363 <varlistentry> 1364 <term><menuchoice><guimenu>Tools</guimenu> 1365 <guimenuitem>Find Minimum...</guimenuitem> 1366 </menuchoice></term> 1367 <listitem> 1368 <para>Find the minimum value of the graph in a specified range.</para> 1369 </listitem> 1370 </varlistentry> 1371 1372 <varlistentry> 1373 <term><menuchoice><guimenu>Tools</guimenu> 1374 <guimenuitem>Find Maximum...</guimenuitem> 1375 </menuchoice></term> 1376 <listitem> 1377 <para>Find the maximum value of the graph in a specified range.</para> 1378 </listitem> 1379 </varlistentry> 1380 1381 </variablelist> 1382 </sect2> 1383 1384 <sect2 id="a-help-menu"> 1385 <title>The Help Menu</title> 1386 1387 <para>&kmplot; has a standard &kde; <guimenu>Help</guimenu> with one addition:</para> 1388 1389 <variablelist> 1390 <varlistentry> 1391 <term><menuchoice><guimenu>Help</guimenu> 1392 <guimenuitem>Predefined Math Functions...</guimenuitem> 1393 </menuchoice></term> 1394 <listitem> 1395 <para>Opens this handbook with a list of the predefined function names and constants 1396 that &kmplot; knows.</para> 1397 </listitem> 1398 </varlistentry> 1399 </variablelist> 1400 1401 </sect2> 1402 </sect1> 1403 1404 </chapter> 1405 1406 <chapter id="dbus"> 1407 <title>Scripting &kmplot;</title> 1408 <para>You can write scripts for &kmplot; using &DBus;. For example, if you want to define a new function <userinput>f(x)=2sin x+3cos 1409 x</userinput>, set its line width to 20 and then draw it, you type in a console:</para> 1410 <para><command>qdbus org.kde.kmplot-PID /parser org.kde.kmplot.Parser.addFunction "f(x)=2sin x+3cos x" ""</command> 1411 As a result, the new function's id number will be returned, or -1 if the function could not be defined.</para> 1412 <para><command>qdbus org.kde.kmplot-PID /parser org.kde.kmplot.Parser.setFunctionFLineWidth ID 20</command> 1413 This command sets the function with the id number ID the line width to 20.</para> 1414 <para><command>qdbus org.kde.kmplot-PID /view org.kde.kmplot.View.drawPlot</command> 1415 This command repaints the window so that the function get visible.</para> 1416 <para> 1417 A list of the available functions: 1418 <variablelist> 1419 <varlistentry> 1420 <term> 1421 /kmplot org.kde.kmplot.KmPlot.fileOpen url 1422 </term> 1423 <listitem> 1424 <para>Load the file <parameter>url</parameter>.</para> 1425 </listitem> 1426 </varlistentry> 1427 <varlistentry> 1428 <term> 1429 /maindlg org.kde.kmplot.MainDlg.isModified 1430 </term> 1431 <listitem> 1432 <para>Returns true if any changes are done.</para> 1433 </listitem> 1434 </varlistentry> 1435 <varlistentry> 1436 <term> 1437 /maindlg org.kde.kmplot.MainDlg.checkModified 1438 </term> 1439 <listitem> 1440 <para>If there are any unsaved changes, a dialog appears to save, discard or cancel the plots.</para> 1441 </listitem> 1442 </varlistentry> 1443 <varlistentry> 1444 <term> 1445 /maindlg org.kde.kmplot.MainDlg.editAxes 1446 </term> 1447 <listitem> 1448 <para>Opens the coordinate system edit dialog.</para> 1449 </listitem> 1450 </varlistentry> 1451 <varlistentry> 1452 <term> 1453 /maindlg org.kde.kmplot.MainDlg.toggleShowSlider 1454 </term> 1455 <listitem> 1456 <para>Shows/hides parameter slider window.</para> 1457 </listitem> 1458 </varlistentry> 1459 <varlistentry> 1460 <term> 1461 /maindlg org.kde.kmplot.MainDlg.slotSave 1462 </term> 1463 <listitem> 1464 <para>Saves the functions (opens the save dialog if it is a new file).</para> 1465 </listitem> 1466 </varlistentry> 1467 <varlistentry> 1468 <term> 1469 /maindlg org.kde.kmplot.MainDlg.slotSaveas 1470 </term> 1471 <listitem> 1472 <para>The same as choosing the <menuchoice><guimenu>File</guimenu><guimenuitem>Save As...</guimenuitem></menuchoice> in the menu.</para> 1473 </listitem> 1474 </varlistentry> 1475 <varlistentry> 1476 <term> 1477 /maindlg org.kde.kmplot.MainDlg.slotPrint 1478 </term> 1479 <listitem> 1480 <para>Opens the print dialog.</para> 1481 </listitem> 1482 </varlistentry> 1483 <varlistentry> 1484 <term> 1485 /maindlg org.kde.kmplot.MainDlg.slotResetView 1486 </term> 1487 <listitem> 1488 <para>The same as choosing <menuchoice><guimenu>View</guimenu><guimenuitem>Reset View</guimenuitem></menuchoice> in the menu.</para> 1489 </listitem> 1490 </varlistentry> 1491 <varlistentry> 1492 <term> 1493 /maindlg org.kde.kmplot.MainDlg.slotExport 1494 </term> 1495 <listitem> 1496 <para>Opens the export dialog.</para> 1497 </listitem> 1498 </varlistentry> 1499 <varlistentry> 1500 <term> 1501 /maindlg org.kde.kmplot.MainDlg.slotSettings 1502 </term> 1503 <listitem> 1504 <para>Opens the settings dialog.</para> 1505 </listitem> 1506 </varlistentry> 1507 <varlistentry> 1508 <term> 1509 /maindlg org.kde.kmplot.MainDlg.slotNames 1510 </term> 1511 <listitem> 1512 <para>Shows the predefined math functions in the handbook.</para> 1513 </listitem> 1514 </varlistentry> 1515 <varlistentry> 1516 <term> 1517 /maindlg org.kde.kmplot.MainDlg.findMinimumValue 1518 </term> 1519 <listitem> 1520 <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Minimum Value...</guimenuitem></menuchoice> in the menu.</para> 1521 </listitem> 1522 </varlistentry> 1523 <varlistentry> 1524 <term> 1525 /maindlg org.kde.kmplot.MainDlg.findMaximumValue 1526 </term> 1527 <listitem> 1528 <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Maximum Value...</guimenuitem></menuchoice> in the menu.</para> 1529 </listitem> 1530 </varlistentry> 1531 <varlistentry> 1532 <term> 1533 /maindlg org.kde.kmplot.MainDlg.graphArea 1534 </term> 1535 <listitem> 1536 <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Plot Area...</guimenuitem></menuchoice> in the menu.</para> 1537 </listitem> 1538 </varlistentry> 1539 <varlistentry> 1540 <term> 1541 /maindlg org.kde.kmplot.MainDlg.calculator 1542 </term> 1543 <listitem> 1544 <para>The same as choosing <menuchoice><guimenu>Tools</guimenu><guimenuitem>Calculator</guimenuitem></menuchoice> in the menu.</para> 1545 </listitem> 1546 </varlistentry> 1547 <varlistentry> 1548 <term> 1549 /parser org.kde.kmplot.Parser.addFunction f_str0 f_fstr1 1550 </term> 1551 <listitem> 1552 <para>Adds a new function with the expressions <parameter>f_str0</parameter> and <parameter>f_str1</parameter>. If the expression does not contain a function name, it will be auto-generated. The id number of the new function is returned, or -1 if the function could not be defined.</para> 1553 </listitem> 1554 </varlistentry> 1555 <varlistentry> 1556 <term> 1557 /parser org.kde.kmplot.Parser.removeFunction id 1558 </term> 1559 <listitem> 1560 <para>Removes the function with the id number <parameter>id</parameter>. If the function could not be deleted, false is returned, otherwise true.</para> 1561 </listitem> 1562 </varlistentry> 1563 <varlistentry> 1564 <term> 1565 /parser org.kde.kmplot.Parser.setFunctionExpression id eq f_str 1566 </term> 1567 <listitem> 1568 <para>Sets the expression for the function with the id number <parameter>id</parameter> to <parameter>f_str</parameter>. Returns true if it succeed, otherwise false.</para> 1569 </listitem> 1570 </varlistentry> 1571 <varlistentry> 1572 <term> 1573 /parser org.kde.kmplot.Parser.countFunctions 1574 </term> 1575 <listitem> 1576 <para>Returns the number of functions (parametric functions are calculated as two).</para> 1577 </listitem> 1578 </varlistentry> 1579 <!-- method double org.kde.kmplot.Parser.fkt(uint id, uint eq, double eq) what is this?--> 1580 <varlistentry> 1581 <term> 1582 /parser org.kde.kmplot.Parser.listFunctionNames 1583 </term> 1584 <listitem> 1585 <para>Returns a list with all functions.</para> 1586 </listitem> 1587 </varlistentry> 1588 <varlistentry> 1589 <term> 1590 /parser org.kde.kmplot.Parser.fnameToID f_str 1591 </term> 1592 <listitem> 1593 <para>Returns the id number of <parameter>f_str</parameter> or -1 if the function name <parameter>f_str</parameter> was not found.</para> 1594 </listitem> 1595 </varlistentry> 1596 <varlistentry> 1597 <term> 1598 /parser org.kde.kmplot.Parser.functionFVisible id 1599 </term> 1600 <listitem> 1601 <para>Returns true if the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> 1602 </listitem> 1603 </varlistentry> 1604 <varlistentry> 1605 <term> 1606 /parser org.kde.kmplot.Parser.functionF1Visible id 1607 </term> 1608 <listitem> 1609 <para>Returns true if the first derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> 1610 </listitem> 1611 </varlistentry> 1612 <varlistentry> 1613 <term> 1614 /parser org.kde.kmplot.Parser.functionF2Visible id 1615 </term> 1616 <listitem> 1617 <para>Returns true if the second derivative of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> 1618 </listitem> 1619 </varlistentry> 1620 <varlistentry> 1621 <term> 1622 /parser org.kde.kmplot.Parser.functionIntVisible id 1623 </term> 1624 <listitem> 1625 <para>Returns true if the integral of the function with the ID <parameter>id</parameter> is visible, otherwise false.</para> 1626 </listitem> 1627 </varlistentry> 1628 <varlistentry> 1629 <term> 1630 /parser org.kde.kmplot.Parser.setFunctionFVisible id visible 1631 </term> 1632 <listitem> 1633 <para>Shows the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> 1634 </listitem> 1635 </varlistentry> 1636 <varlistentry> 1637 <term> 1638 /parser org.kde.kmplot.Parser.setFunctionF1Visible id visible 1639 </term> 1640 <listitem> 1641 <para>Shows the first derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> 1642 </listitem> 1643 </varlistentry> 1644 <varlistentry> 1645 <term> 1646 /parser org.kde.kmplot.Parser.setFunctionF2Visible id visible 1647 </term> 1648 <listitem> 1649 <para>Shows the second derivative of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> 1650 </listitem> 1651 </varlistentry> 1652 <varlistentry> 1653 <term> 1654 /parser org.kde.kmplot.Parser.setFunctionIntVisible id visible 1655 </term> 1656 <listitem> 1657 <para>Shows the integral of the function with the ID <parameter>id</parameter> if <parameter>visible</parameter> is true. If <parameter>visible</parameter> is false, the function will be hidden. True is returned if the function exists, otherwise false.</para> 1658 </listitem> 1659 </varlistentry> 1660 <varlistentry> 1661 <term> 1662 /parser org.kde.kmplot.Parser.functionStr id eq <!-- what is eq?--> 1663 </term> 1664 <listitem> 1665 <para>Returns the function expression of the function with the ID <parameter>id</parameter>. If the function not exists, an empty string is returned instead.</para> 1666 </listitem> 1667 </varlistentry> 1668 <varlistentry> 1669 <term> 1670 /parser org.kde.kmplot.Parser.functionFLineWidth id 1671 </term> 1672 <listitem> 1673 <para>Returns the line width of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> 1674 </listitem> 1675 </varlistentry> 1676 <varlistentry> 1677 <term> 1678 /parser org.kde.kmplot.Parser.functionF1LineWidth id 1679 </term> 1680 <listitem> 1681 <para>Returns the line width of the first derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> 1682 </listitem> 1683 </varlistentry> 1684 <varlistentry> 1685 <term> 1686 /parser org.kde.kmplot.Parser.functionF2LineWidth id 1687 </term> 1688 <listitem> 1689 <para>Returns the line width of the second derivative of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> 1690 </listitem> 1691 </varlistentry> 1692 <varlistentry> 1693 <term> 1694 /parser org.kde.kmplot.Parser.functionIntLineWidth id 1695 </term> 1696 <listitem> 1697 <para>Returns the line width of the integral of the function with the ID <parameter>id</parameter>. If the function not exists, 0 is returned.</para> 1698 </listitem> 1699 </varlistentry> 1700 <varlistentry> 1701 <term> 1702 /parser org.kde.kmplot.Parser.setFunctionFLineWidth id linewidth 1703 </term> 1704 <listitem> 1705 <para>Sets the line width of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> 1706 </listitem> 1707 </varlistentry> 1708 <varlistentry> 1709 <term> 1710 /parser org.kde.kmplot.Parser.setFunctionF1LineWidth id linewidth 1711 </term> 1712 <listitem> 1713 <para>Sets the line width of the first derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> 1714 </listitem> 1715 </varlistentry> 1716 <varlistentry> 1717 <term> 1718 /parser org.kde.kmplot.Parser.setFunctionF2LineWidth id linewidth 1719 </term> 1720 <listitem> 1721 <para>Sets the line width of the second derivative of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> 1722 </listitem> 1723 </varlistentry> 1724 <varlistentry> 1725 <term> 1726 /parser org.kde.kmplot.Parser.setFunctionIntLineWidth id linewidth 1727 </term> 1728 <listitem> 1729 <para>Sets the line width of the integral of the function with the ID <parameter>id</parameter> to <parameter>linewidth</parameter>. True is returned if the function exists, otherwise false.</para> 1730 </listitem> 1731 </varlistentry> 1732 <varlistentry> 1733 <term> 1734 /parser org.kde.kmplot.Parser.functionParameterList id 1735 </term> 1736 <listitem> 1737 <para>Returns a list with all the parameter values for the function with the ID <parameter>id</parameter>.</para> 1738 </listitem> 1739 </varlistentry> 1740 <varlistentry> 1741 <term> 1742 /parser org.kde.kmplot.Parser.functionAddParameter id new_parameter 1743 </term> 1744 <listitem> 1745 <para>Adds the parameter value <parameter>new_parameter</parameter> to the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para> 1746 </listitem> 1747 </varlistentry> 1748 <varlistentry> 1749 <term> 1750 /parser org.kde.kmplot.Parser.functionRemoveParameter id remove_parameter 1751 </term> 1752 <listitem> 1753 <para>Removes the parameter value <parameter>remove_parameter</parameter> from the function with the ID <parameter>id</parameter>. True is returned if the operation succeed, otherwise false.</para> 1754 </listitem> 1755 </varlistentry> 1756 <varlistentry> 1757 <term> 1758 /parser org.kde.kmplot.Parser.functionMinValue id 1759 </term> 1760 <listitem> 1761 <para>Returns the minimum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the minimum value is not defined, an empty string is returned.</para> 1762 </listitem> 1763 </varlistentry> 1764 <varlistentry> 1765 <term> 1766 /parser org.kde.kmplot.Parser.functionMaxValue id 1767 </term> 1768 <listitem> 1769 <para>Returns the maximum plot range value of the function with the ID <parameter>id</parameter>. If the function not exists or if the maximum value is not defined, an empty string is returned.</para> 1770 </listitem> 1771 </varlistentry> 1772 <varlistentry> 1773 <term> 1774 /parser org.kde.kmplot.Parser.setFunctionMinValue id min 1775 </term> 1776 <listitem> 1777 <para>Sets the minimum plot range value of the function with the ID <parameter>id</parameter> to <parameter>min</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> 1778 </listitem> 1779 </varlistentry> 1780 <varlistentry> 1781 <term> 1782 /parser org.kde.kmplot.Parser.setFunctionMaxValue id max 1783 </term> 1784 <listitem> 1785 <para>Sets the maximum plot range value of the function with the ID <parameter>id</parameter> to <parameter>max</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> 1786 </listitem> 1787 </varlistentry> 1788 1789 <varlistentry> 1790 <term> 1791 /parser org.kde.kmplot.Parser.functionStartXValue id 1792 </term> 1793 <listitem> 1794 <para>Returns the initial x point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the x-point-expression is not defined, an empty string is returned.</para> 1795 </listitem> 1796 </varlistentry> 1797 <varlistentry> 1798 <term> 1799 /parser org.kde.kmplot.Parser.functionStartYValue id 1800 </term> 1801 <listitem> 1802 <para>Returns the initial y point for the integral of the function with the ID <parameter>id</parameter>. If the function not exists or if the y-point-expression is not defined, an empty string is returned.</para> 1803 </listitem> 1804 </varlistentry> 1805 <varlistentry> 1806 <term> 1807 /parser org.kde.kmplot.Parser.setFunctionStartValue id x y 1808 </term> 1809 <listitem> 1810 <para>Sets the initial x and y point for the integral of the function with the ID <parameter>id</parameter> to <parameter>x</parameter> and <parameter>y</parameter>. True is returned if the function exists and the expression is valid, otherwise false.</para> 1811 </listitem> 1812 </varlistentry> 1813 <varlistentry> 1814 <term> 1815 /view org.kde.kmplot.View.stopDrawing 1816 </term> 1817 <listitem> 1818 <para>If &kmplot; currently is drawing a function, the procedure will stop.</para> 1819 </listitem> 1820 </varlistentry> 1821 <varlistentry> 1822 <term> 1823 /view org.kde.kmplot.View.drawPlot 1824 </term> 1825 <listitem> 1826 <para>Redraws all functions.</para> 1827 </listitem> 1828 </varlistentry> 1829 </variablelist> 1830 </para> 1831 </chapter> 1832 1833 <chapter id="credits"> 1834 <title>Credits and License</title> 1835 1836 <para> 1837 &kmplot; 1838 </para> 1839 1840 <para> 1841 Program copyright 2000-2002 <personname><firstname>Klaus-Dieter</firstname><surname>Möller</surname></personname> &Klaus-Dieter.Moeller.mail; 1842 </para> 1843 1844 <itemizedlist> 1845 <title>Contributors</title> 1846 <listitem> 1847 <para><acronym>CVS</acronym>: &Robert.Gogolok; &Robert.Gogolok.mail;</para> 1848 </listitem> 1849 <listitem> 1850 <para>Porting &GUI; to &kde; 3 and Translating: &Matthias.Messmer; &Matthias.Messmer.mail;</para> 1851 </listitem> 1852 <listitem> 1853 <para>Various improvements: Fredrik Edemar <email>f_edemar@linux.se</email></para> 1854 </listitem> 1855 <listitem> 1856 <para>Porting to &Qt; 4, UI improvements, features: David Saxton <email>david@bluehaze.org</email></para> 1857 </listitem> 1858 </itemizedlist> 1859 1860 <para> 1861 Documentation copyright 2000--2002 by Klaus-Dieter Möller &Klaus-Dieter.Moeller.mail;. 1862 </para> 1863 <para>Documentation extended and updated for &kde; 3.2 by &Philip.Rodrigues; &Philip.Rodrigues.mail;.</para> 1864 <para>Documentation extended and updated for &kde; 3.3 by &Philip.Rodrigues; &Philip.Rodrigues.mail; and Fredrik Edemar <email>f_edemar@linux.se</email>.</para> 1865 <para>Documentation extended and updated for &kde; 3.4 by Fredrik Edemar <email>f_edemar@linux.se</email>.</para> 1866 <para>Documentation extended and updated for &kde; 4.0 by David Saxton <email>david@bluehaze.org</email>.</para> 1867 <!-- TRANS:CREDIT_FOR_TRANSLATORS --> 1868 1869 &underFDL; <!-- FDL: do not remove. Commercial development should 1870 --> 1871 &underGPL; <!-- GPL License --> 1872 1873 </chapter> 1874 1875 &documentation.index; 1876 </book> 1877 <!-- 1878 Local Variables: 1879 mode: sgml 1880 sgml-minimize-attributes:nil 1881 sgml-general-insert-case:lower 1882 sgml-indent-step:0 1883 sgml-indent-data:nil 1884 End: 1885 --> 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899