MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.191.209.202
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/calc/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/calc/calc-graph.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:43 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/calc/calc-graph.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\207" [require calc-ext calc-macs] 2)
(defvar calc-gnuplot-tempfile "calc")
(defvar calc-gnuplot-keep-outfile nil)
(defvar calc-gnuplot-version nil)
(defvar calc-gnuplot-display (getenv "DISPLAY"))
(defvar calc-graph-default-precision 5)
(defvar calc-gnuplot-buffer nil)
(defvar calc-gnuplot-input nil)
(defvar calc-gnuplot-last-error-pos 1)
(defvar calc-graph-last-device nil)
(defvar calc-graph-last-output nil)
(defvar calc-graph-file-cache nil)
(defvar calc-graph-var-cache nil)
(defvar calc-graph-data-cache nil)
(defvar calc-graph-data-cache-limit 10)
(defvar calc-graph-no-auto-view nil)
(defvar calc-graph-no-wait nil)
(defalias 'calc-graph-fast #[(many) "\302\303\302!\210\304	!\210\305\306!)\207" [calc-graph-no-auto-view many t calc-graph-delete calc-graph-add calc-graph-plot nil] 2 nil "P"])
(defalias 'calc-graph-fast-3d #[(many) "\302\303\302!\210\304	!\210\305\306!)\207" [calc-graph-no-auto-view many t calc-graph-delete calc-graph-add-3d calc-graph-plot nil] 2 nil "P"])
(defalias 'calc-graph-delete #[(all) "\300\301!\207" [calc-do #[nil "\303 \210rq\210\304\305	\"\203\"\306\307!\203\310`d|\210\202\"`dS|\210)\311 \207" [calc-gnuplot-input all calc-graph-var-cache calc-graph-init calc-graph-find-plot t looking-at "s?plot" nil calc-graph-view-commands] 3]] 2 nil "P"])
(defalias 'calc-graph-find-plot #[(&optional before all) "eb\210\303\304\305\306#\2059`db\210	\204\"\307\310\305\306#\203\"`W\203/b\210\n\2037\311 \210\2027\n\2047\303\312!\210)\306\207" [beg all before re-search-forward "^s?plot[ 	]+" nil t search-backward "," beginning-of-line ",[ 	]+"] 4])
(defalias 'calc-graph-add #[(many) "\300\301!\207" [calc-do #[nil "\304 \210\204\305\306\307\310!!\306\307\311!!\"\210\202\256:\204\"\312=\203M\306\307\310!!\307\311!	\242\313=\2047\314\315!\210	A\211\203I\305\n\306	@!\"\210\2027*\202\256\316!\211\312V\203x\306\307T!!\312V\203t\305\n\306\307!!\"\210S\211\202_)\202\256\317[\211\312V\203\255\307!\211\242\313=\203\225G\320U\204\231\314\321!\210\305\306A@!\306\3108!\"\210S\211\202~)\322 \207" [many ylist xdata pair calc-graph-init calc-graph-add-curve calc-graph-lookup calc-top-n 2 1 0 vec error "Y argument must be a vector" prefix-numeric-value nil 3 "Argument must be an [x,y] vector" calc-graph-view-commands] 6]] 2 nil "P"])
(defalias 'calc-graph-add-3d #[(many) "\300\301!\207" [calc-do #[nil "\305 \210\204\306\307\310\311!!\307\310\312!!\307\310\313!!#\210\202\310:\204'\314=\203Y\307\310\311!!\307\310\312!!\310\313!	\242\315=\204B\316\317!\210	A\211\203U\306\n\307	@!#\210\202B+\202\310\320!\211\314V\203\215\307\310\312\\!!\307\310T!!\314V\203\211\306\n\307\310!!#\210S\211\202s*\202\310\321[\211\314V\203\307\310!\211\242\315=\203\252\fG\322U\204\256\316\323!\210\306\307\fA@!\307\312\f8!\307\311\f8!#\210S\211\202\223)\324 \207" [many zlist ydata xdata curve calc-graph-init calc-graph-add-curve calc-graph-lookup calc-top-n 3 2 1 0 vec error "Z argument must be a vector" prefix-numeric-value nil 4 "Argument must be an [x,y,z] vector" calc-graph-view-commands] 7]] 2 nil "P"])
(defalias 'calc-graph-add-curve #[(xdata ydata &optional zdata) "\306 \307\310!\307\311!rq\210eb\210\312\f\203\313\202\314\315\316#\203&\317\320!\210\312\321\315\316#\2037\315\210\322c\210\202Sdb\210h\323=\204C\324c\210\f\203K\325\202L\326\327\261\210\330u\210\331\332
A@!\333\332)A@!\261\210\f\203p\333\332\fA@!\261\210\334\335\332)A@!\336\337\261\210	\242\340=\205\210\nT	8\242\340=\205\224\nT8)\341\211*:?\206\266*@\342>\206\266*@\343=\205\266\344*8\345Y)\203\300\346!\206\301\345	\211*:?\206\340*@\342>\206\340*@\343=\205\340\344*8\345Y)\203\352\346	!\206\373\307\344)8!\242\340=\203\372\345\202\373\330\347\350\344)8!!#+\207" [lstyle pstyle num calc-gnuplot-input zdata xdata calc-graph-count-curves calc-var-value var-PointStyles var-LineStyles re-search-forward "^plot[ 	]" "^splot[ 	]" nil t error "Can't mix 2d and 3d curves on one graph" "^s?plot[ 	]" ", " 10 "\n" "splot" "plot" " \n" -1 "{" symbol-name ":" "} " "title \"" "\" " "with dots" vec calc-graph-set-styles (bigpos bigneg) float 2 0 math-trunc math-contains-sdev-p eval ydata a] 8])
(defalias 'calc-graph-lookup #[(thing) "\242\303=\203\305\3068!\203\207\307	\"\211\204>\310\311	GT!P\312\303\313\f!\313\314\fP!EB\211	B\3068L\210*\nA)\207" [thing calc-graph-var-cache found var varname calc-var-value 2 assoc "PlotData" int-to-string nil intern "var-"] 6])
(defalias 'calc-graph-juggle #[(arg) "\303 \210rq\210	\304W\203%\305 \211\304V\203$	\304W\203$	\n\\\211\202)	S\211\304Y\2054\306 \210\202%)\207" [calc-gnuplot-input arg num calc-graph-init 0 calc-graph-count-curves calc-graph-do-juggle] 3 nil "p"])
(defalias 'calc-graph-count-curves #[nil "rq\210\302\303\304\305#\203$\306eb\210\307\310\304\305#\203	T\202	)\202%\311)\207" [calc-gnuplot-input num re-search-forward "^s?plot[ 	]" nil t 1 search-forward "," 0] 4])
(defalias 'calc-graph-do-juggle #[nil "\302\303\304\211\"\205,`\303\304\302\"\210`=\206,`\305\\dS{`dS|\210\306\\b\210	\307\261))\207" [base str nil calc-graph-find-plot t 2 5 ", "] 3])
(defalias 'calc-graph-print #[(flag) "\301\302\"\207" [flag calc-graph-plot t] 3 nil "P"])
(defalias 'calc-graph-plot #[(flag &optional printing) "\300\301`\"\207" [calc-do #[nil "p\306\307!\310\311\312\205\313!\312V\205\313!\312W\311\211\211\211\211\211\211\211\211@ABCDEFGHIJ\314\315\316\"\210\212\317 \210Iq\210\320 \210Kq\210eb\210\321\322\311\323#@\324 LMN\306\325!q\210\320 \210\326c\210M\327Y\203\330\331\332\333\334\335\336\261\210M\337Y\203\230\340\341@\203\221\342\202\222\343\344\345\346\261\210`\347N\261\210*eb\210@\203\270E\203\265\350\351!\210\202\270\323Dp\323OKP\203\314QR\202\352\352\353!\352\354!
\204\333S\f\203\347\355\f!@\202\352T
\342\232\204\366
\356\232\203(P\203\377\357\202'U\360\230\203\n\361\202'V\362=\204\363\364!\203\365\202'L\337Y\203&\366\202'\357
\366\232\2038\367\370\371 S\372 S#
\373\232\203N\367\370\371 \337Z\374_\372 \337Z\374_#\f;\203r\f\375\232\204f\f\376\232\203x\323\211B\203x\377\201\226!\211G\202x\201\227\f!
W\232\204\213
W\201\230\201\231
\"\210\fX\232\204\256\fX\201\230\201\232\f\201\233\232\203\247\342\202\254\201\234\f!\"\210\352\201\235!\211\203\301\201\236!\202\316@\203\313Y\202\315Z\352\201\237!\211\203\341\201\236\n!\202\344[\201\240\353!\210\201\240\354!\210\201\240\201\235!\210\201\240\201\237!\210*	b\210\201\241\201\242@\203\201\243\202\201\244\201\245\\]!\201\246\261\210\321\201\247\311\323#\203k\312\224\312\225|\210\201\250\201\251!\203H\201\252\310!\210\202%h\201\253>\203X\201\226u\210\202Hh\201\254=\203%\201\252\201\226!\210\202%rJq\210\\]^_`\n@\257AD\204\243a@AA\232\203\243aGbV\203\252a\211AA\241\210\202\220\311ABCa)\201\255\323\211\"\210\321@\203\276\201\256\202\301\201\257\311\323#\203sFTF\310\224\310\225{c\201\260\201\261cP!d\201\262\201\263d!!e@\205\365\327\224\327\225{f@\205\201\260\201\261fP!g@\205\201\263g!h\337\224\337\225{i\201\260\201\261iP!j\201\263j!k\311l\312\224\312\225|\210\377F!lrJq\210\311ek\311\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211@?\205i\201\264l!\312\311\211\337\n]^\201\265>?\205{^\323\311\312\311mnop^qrstuvwxyz{|}~\200\201\202\203\204\205\206\207\210\211\212\213H\212@\203\317\201\266 \210\202\324\201\267 \210Iq\210db\210\201\246c\261\210@\203\360\201\270f\261\210\201\270i\347\261\210`H\311\211\201\271\311@?\205\213\212\207wF\214\215\216\217\220\214FT\2218A@\232\204,\311uFT\2218A\214\240\210u\204A\201\272 \210-u\204do\204V\350\201\273ci#\210\201\274Hdl\311\201\275%\210.#\201\234l!c\210.\n\202\262C\203}A\311\241\210F\312U\203\236\201\230\201\276!\210\201\277\201\300!\210\201\301\201\302!\202=Fb]b\377\312!l\201\274edl\311\201\275%\210\201\230\201\303\201\234l!\"\210)\f\201\233\232\204\340\222\204\340\201\233X\201\230\201\232!\210P\203\352\223\202\224\206\201\304\201\305
\"\203\201\306\202B\205\201\307\211\225\205<\225;\203)\201\230\201\310\367\225G\206$R\"\"\202<\2259\2036\225\f!\202<\201\227\225!).\207" [flag samples-pos precision calc-graph-resolution output device get-buffer-create "*Gnuplot Temp-2*" 1 nil 0 prefix-numeric-value add-hook kill-emacs-hook calc-graph-kill-hook calc-graph-init erase-buffer re-search-forward "^splot[ 	]" t buffer-string "*Gnuplot Temp*" "# (Note: This is a temporary copy---do not edit!)\n" 2 "set noarrow\nset nolabel\n" "set autoscale xy\nset nologscale xy\n" "set xlabel\nset ylabel\nset title\n" "set noclip points\nset clip one\nset clip two\n" "set format \"%g\"\nset tics\nset xtics\nset ytics\n" "set style data linespoints\n" "set nogrid\nset nokey\nset nopolar\n" 3 "set surface\nset nocontour\n" "set " "" "no" "parametric\n" "set notime\nset border\nset ztics\nset zeroaxis\n" "set view 60,30,1,1\nset offsets 0,0,0,0\n" "\n\n" error "This option works only for 2d plots" calc-graph-find-command "terminal" "output" read-from-string "default" "postscript" "pgnuplot" "windows" x getenv "DISPLAY" "x11" "dumb" format "dumb %d %d" frame-width frame-height "big" 4 "auto" "tty" calc-temp-file-name calc-graph-is-splot cache-env tty-output calc-graph-surprise-splot recompute calc-graph-refine calc-graph-curve-num tempoutfile tempbuftop tempbuf calcbuf calc-gnuplot-input calc-gnuplot-version ver str calc-graph-no-auto-view printing calc-gnuplot-print-device calc-gnuplot-print-output calc-gnuplot-default-device calc-gnuplot-default-output calc-gnuplot-name window-system calc-graph-last-device calc-graph-last-output calc-graph-default-resolution-3d calc-graph-default-resolution calc-graph-default-precision calc-angle-mode calc-complex-mode calc-simplify-mode calc-infinite-mode calc-word-size calc-graph-data-cache calc-graph-data-cache-limit calc-graph-xname xvar calc-graph-xvalue calc-graph-y3name y3var calc-graph-y3value calc-graph-yname yvar calc-graph-yvalue filename math-working-step-2 math-working-step calc-graph-non-blank calc-graph-blank calc-internal-prec calc-prefer-frac calc-symbolic-mode calc-graph-stepcount calc-graph-keep-file calc-graph-numsteps3 calc-graph-numsteps calc-graph-yvector calc-graph-ycacheptr calc-graph-ycache calc-graph-yval calc-graph-yvec calc-graph-zval var-DUMMY2 calc-graph-y3step y3val var-DUMMY calc-graph-xstep calc-graph-xval calc-graph-xvec y3high y3low calc-graph-xhigh calc-graph-xlow calc-graph-zp calc-graph-yp calc-graph-xp entry calc-twos-complement-mode calc-number-radix calc-leading-zeros calc-group-digits calc-graph-file-cache calc-gnuplot-keep-outfile calc-gnuplot-print-command calc-gnuplot-plot-command command -1 eval calc-gnuplot-command "set terminal" "set output" "STDOUT" prin1-to-string "samples" string-to-number "precision" calc-graph-set-command "set samples " int-to-string 20 200 5 "\n" "{\\*[^}]+}[^,\n]*" looking-at "," delete-char (32 9) 44 calc-graph-find-plot "{\\([^{}:\n]+\\):\\([^{}:\n]+\\):\\([^{}:\n]+\\)}" "{\\([^{}:\n]+\\)\\(:\\)\\([^{}:\n]+\\)}" intern "var-" math-evaluate-expr calc-var-value file-exists-p (none num) calc-graph-compute-3d calc-graph-compute-2d ":" 10 calc-graph-format-data "No valid data points for %s:%s" write-region quiet "clear" calc-clear-command-flag clear-message message "No data to plot!" "load" string-match "^dumb" calc-graph-show-dumb calc-graph-show-tty "!"] 34]] 3 nil "P"])
(defalias 'calc-graph-compute-2d #[nil "\242\306=\211\203bGS\211\307U\203\310\311!\207\242\306=\211\203/GS\nU\206a\310\312
 #\207\242\313=\203P\314!\203P\315\316\3178\3208\"\nS\"!\3208\211\207\321!\203[\322\211!\207\310\323
 #\207\321!\204\227\324\"\325!\326!\210\"\204~\310\327 \"\210\"A\203\214\310\330 \"#\210\331\332\"@!\333#)\334#\"$\335$#\"\210#$\206\261C\211$C\244\210\242\306=\211\204\314%\203\314$AA\203\314\336 \207\337 \207" [calc-graph-yvalue calc-graph-yvec calc-graph-numsteps calc-graph-xvalue calc-graph-xvec calc-graph-xname vec 0 error "Can't plot an empty vector" "%s and %s have different lengths" intv math-constp math-div math-sub 3 2 math-realp 1 "%s is not a suitable basis for %s" nil math-evaluate-expr calc-default-formula-arglist "%s does not contain any unassigned variables" "%s contains more than one variable: %s" math-expr-subst math-build-var-name (var DUMMY var-DUMMY) assoc delq calc-graph-refine-2d calc-graph-recompute-2d calc-graph-yname calc-graph-xstep math-arglist calc-graph-data-cache calc-graph-ycache calc-graph-refine] 5])
(defalias 'calc-graph-refine-2d #[nil "\306	A\307\310!\211\2030\311\312\"\2030\313\224\313\225\314\315\224\315\225O!\314
\fO!*\202W\203W\nA\203W\nA@@\316\"\317U*\203W\nA\211\2026\nGS\nA\203\247\203{\n@@\316\"\317U*\203\247\320\321\n@@\nA@@\"\313\"T\322!\nB\nAB\241\210\nAA\211\202]	\323\211\207" [calc-graph-keep-file calc-graph-ycache calc-graph-ycacheptr calc-graph-xval e2 b2 nil calc-graph-find-command "xrange" string-match "\\`\\[\\([0-9.eE+-]*\\):\\([0-9.eE+-]*\\)\\]\\'" 2 math-read-number 1 math-compare -1 math-div math-add math-evaluate-expr 1000000 calc-graph-xlow calc-graph-xhigh b a math-working-step-2 var-DUMMY math-working-step calc-graph-yvalue calc-graph-yval calc-graph-yp calc-graph-numsteps] 5])
(defalias 'calc-graph-recompute-2d #[nil "\n\203GS\306\202G\242\307=\203?\310!\203?\306\3118\3128\313\314\"\fS\"\3118\202G\315\316#\210\f\fS\211\317Y\203
T\n\203\213 A\211 @!	=\204\241	@:\203\241	@@!\"#\320#\"\"\321U*\204\241\202\241\f\317U\203\230!\202\241!\322\"	A\203\303	A@@!\"#\320#\"\"\321U*\203\303	A\211\202\242	A\203\336	A@@!\"#\320#\"\"\317U*\204\362\306$!%	!\323&!B	AB\241\210	A\n\203	@A
B\202J\204J	\202J\n\203$ \324'\325
\237B GS\211\207\326\211\207" [calc-graph-ycache calc-graph-ycacheptr calc-graph-xvec calc-graph-xvalue calc-graph-numsteps calc-graph-yvector nil intv math-constp 2 3 math-div math-sub error "%s is not a suitable basis for %s" 0 math-compare -1 math-add math-evaluate-expr t vec 1000000 calc-graph-resolution calc-graph-yp calc-graph-xlow calc-graph-xhigh calc-graph-xstep calc-graph-xname calc-graph-yname math-working-step-2 math-working-step calc-graph-xp calc-graph-xval b a calc-graph-keep-file var-DUMMY calc-graph-yvalue calc-graph-yvec] 5])
(defalias 'calc-graph-compute-3d #[nil "\242\306=\211\203V\307!\203\nGSA@GS\f\242\306=\2030\fGS\nU\204i\310\311
\"\210\202i\f\242\312=\203S\313\f!\203S\314\n\315\f8\316\317\320\f8\315\f8\"\nS\"#\202i\321\f!\203b\314\n\f\322#\202i\310\323
&#\210'\242\306=\203\203'GSU\204\306\310\311(\"\210\202\306'\242\312=\203\254\313'!\203\254\314\315'8\316\317\320'8\315'8\"S\"#'\202\306\321'!\203\276\314'\322#'\202\306\310\323(&#\210\324\211)*\324+\325,\fAA\211\203)\326T\f@\"\244)*\327\330'A!B\244*+\331\330@A!B\244+\202\322\nT_S\211\207GS\211\327U\203\310\332!\210\f\242\306=\203'\fGS\nU\204.\310\323
&#\210'\242\306=\203?'GS\nU\204G\310\323(&#\210\f)'*+\325\211,\207\321!\204\223\324-\333!\334!\210\335-\336\"\211-A\204y\310\337&\"\210-AA\203\210\310\340&-#\210\341\342\343-\"\344#)\f\242\306=\211,\203\244\fGS\202\321\f\242\312=\203\312\313\f!\203\312.\314\n\315\f8\316\317\320\f8\315\f8\"\nS\"#\202\321\310\323
&#\210'\242\306=\203\341'GS\202'\242\312=\203
\313'!\203
.\314\315'8\316\317\320'8\315'8\"S\"#'\202\310\323(&#\210\324\211)*\324+\325,\327/\fA\211\203v)\326T\f@\"\244)*\327\330'A!B\244*\345+B+'0\f@1\3272/T/0A\2110\203$2T20@3\333!+B+\202X+\237+\nT_S\211\207" [calc-graph-yvalue calc-graph-yvec calc-graph-numsteps calc-graph-numsteps3 calc-graph-xvalue calc-graph-xname vec math-matrixp error "%s has wrong length" intv math-constp calcFunc-index 2 math-div math-sub 3 math-realp 1 "%s is not a suitable basis for %s" nil t make-list 0 copy-sequence (skip) "Can't plot an empty vector" math-evaluate-expr calc-default-formula-arglist sort string-lessp "%s does not contain enough unassigned variables" "%s contains too many variables: %s" math-multi-subst mapcar math-build-var-name ((var DUMMY var-DUMMY) (var DUMMY2 var-DUMMY2)) (skip) calc-graph-yname calc-graph-y3value calc-graph-y3name calc-graph-xp calc-graph-yp calc-graph-zp calc-graph-xvec math-arglist calc-graph-resolution math-working-step calc-graph-y3step var-DUMMY math-working-step-2 var-DUMMY2] 9])
(defalias 'calc-graph-format-data #[nil "\306!\203\307\310\311	A\"B\307\310\312	A\"B)T\211\fX\205;
\203@&A\211&@'A\211@(\nA\211@)\202{*\203[+'\313+,\"+A\211@(\202{@@'@A(A\211\203y-\203{'-\232\203{\314.\203\245)\242\315=\203)G\316U\203)A@'\317)8(\320)8)\202(\242\315=\203\344(G\316U\203\344/\204\317r\321\322!q\210\212db\210\323\324!\210\325c\210\326/*(A@'\320(8)\317(8(\202(\242\327=\203(G\320U\203(A@'\317(8('\2110:?\2060@\330>)\203(\2110:?\206\"0@\330>)\203)\203>)\2110:?\206:0@\330>)\203\3311\3262'\2110:?\206S0@\332>)\203`\333'!c\210\202~'@\334=\203n\335'!'\333'A@!\336\337\317'8!\261\210\340c\210(\2110:?\206\2200@\332>)\203\235\333(!c\210\202\273(@\334=\203\253\335(!(\333(A@!\336\337\317(8!\261\210)\203\375\340c\210)\2110:?\206\3220@\332>)\203\337\333)!c\210\202\375)@\334=\203\355\335)!)\333)A@!\336\337\317)8!\261\210\341c\210\202)\342\232\204-\343\344!\203-$\242\307=\203-$\3073'(\257C\244\203-\345\344!\2101\204\341c\210\3261\202\207" [calc-graph-yp yp calc-graph-zp calc-graph-stepcount calc-graph-numsteps calc-graph-xvec math-contains-sdev-p vec mapcar math-get-value math-get-sdev math-add 0 calcFunc-xyz 4 2 3 get-buffer-create "*Gnuplot Temp*" re-search-backward "^plot[ 	]" "set parametric\ns" t calcFunc-xy (bigpos bigneg frac float) nil (bigpos bigneg) math-format-number frac math-float "e" int-to-string " " "\n" (skip) boundp var-PlotRejects calc-refresh-evaltos calc-graph-xp calc-graph-xval calc-graph-yval calc-graph-zval calc-graph-yvec calc-graph-xvalue calc-graph-xstep calc-graph-xhigh calc-graph-is-splot calc-graph-surprise-splot a calc-graph-blank calc-graph-non-blank calc-graph-curve-num] 7])
(defalias 'calc-temp-file-name #[(num) "G	TX\203\303C\244\211\202	T8\2064	T\233\304\n	\305X\203,\306\307	Z!\202/\310	!P!\303D\240@\207" [calc-graph-file-cache num calc-gnuplot-tempfile nil make-temp-file 0 char-to-string 65 int-to-string] 7])
(defalias 'calc-graph-delete-temps #[nil "\205@\203\301@@!\203\302\303\304\217\210A\211\204\305\207" [calc-graph-file-cache file-exists-p err (byte-code "\301@@!\207" [calc-graph-file-cache delete-file] 2) ((error)) nil] 4])
(defalias 'calc-graph-kill-hook #[nil "\300 \207" [calc-graph-delete-temps] 1])
#@120 Default calc-gnuplot-plot-command for "tty" output mode.
This is useful for tek40xx and other graphics-terminal types.
(defalias 'calc-graph-show-tty #[(output) "\303\304\211\305	\305\306\307\310\n\211#&\207" [shell-file-name calc-gnuplot-buffer output call-process-region 1 nil "-c" format "cat %s >/dev/tty; rm %s"] 12 (#$ . 19839)])
#@42 The keymap for the "dumb" terminal plot.
(defvar calc-dumb-map nil (#$ . 20183))
#@121 Default calc-gnuplot-plot-command for Pinard's "dumb" terminal type.
This "dumb" driver will be present in Gnuplot 3.0.
(defalias 'calc-graph-show-dumb #[(&optional output) "\306 \307\216\310	!\210\311 \210\nb\210\312\313\314\315#\204\316\317!\210db\210\320\321!\210\322\313!\203^\317u\210l\2032\317y\210\323\324!\204R\323\325!\204R\323\326!\204R`\327\330\331\332 \"!\210b\210)\333\334 `\"\210db\210\202h\314\210\335u\210\336\337!\210\f\204\245\340 \341\f\342\343#\210\341\f\344\343#\210\341\f\345\346#\210\341\f\347\350#\210\341\f\351\352#\210\341\f\353\346#\210\341\f\354\343#\210\341\f\355\356#\210\341\f\357\356#\210\360\f!\210\315\361\362!\210\363 \210\364\365!*\207" [#1=#:wconfig calc-gnuplot-buffer calc-gnuplot-trail-mark pt calc-dumb-map truncate-lines current-window-configuration ((set-window-configuration #1#)) switch-to-buffer delete-other-windows search-forward "\f" nil t sleep-for 1 re-search-backward "\f\\|^[ 	]+\\^$\\|G N U P L O T" looking-at calc-graph-find-command "time" "title" "ylabel" insert-before-markers format "(%s)" current-time-string set-window-start selected-window -1 recenter (4) make-sparse-keymap define-key "\n" scroll-up-command " " "" scroll-down-command "<" scroll-left ">" scroll-right "{" "}" "q" exit-recursive-edit "" use-local-map message "Type `q' or `C-c C-c' to return to Calc" recursive-edit bury-buffer "*Gnuplot Trail*"] 4 (#$ . 20271) nil])
(defalias 'calc-graph-clear #[nil "\205$\302\232\204\303\232\203!\304\305	\306\232\203\307\202\310	!\"\207\304\311!\207" [calc-graph-last-device calc-graph-last-output "x11" "X11" calc-gnuplot-command "set output" "STDOUT" "" prin1-to-string "clear"] 4 nil nil])
(defalias 'calc-graph-title-x #[(title) "\301\302\303\232?\205\f\304!\"\207" [title calc-graph-set-command "xlabel" "" prin1-to-string] 4 nil "sX axis title: "])
(defalias 'calc-graph-title-y #[(title) "\301\302\303\232?\205\f\304!\"\207" [title calc-graph-set-command "ylabel" "" prin1-to-string] 4 nil "sY axis title: "])
(defalias 'calc-graph-title-z #[(title) "\301\302\303\232?\205\f\304!\"\207" [title calc-graph-set-command "zlabel" "" prin1-to-string] 4 nil "sZ axis title: "])
(defalias 'calc-graph-range-x #[(range) "\301\302\"\207" [range calc-graph-set-range "xrange"] 3 nil "sX axis range: "])
(defalias 'calc-graph-range-y #[(range) "\301\302\"\207" [range calc-graph-set-range "yrange"] 3 nil "sY axis range: "])
(defalias 'calc-graph-range-z #[(range) "\301\302\"\207" [range calc-graph-set-range "zrange"] 3 nil "sZ axis range: "])
(defalias 'calc-graph-set-range #[(cmd range) "\302\232\203\n\303\304!\210\305\306\"\203\307\310O\305\311\"\2041\305\312\"\204+\305\313\"\2031\314\224\315I\210\316	\317\232?\205>\320\321Q\"\207" [range cmd "$" calc-do #[nil "\302\303!\211\242\304=\203%\305!\203%\306\307\3108!!\311\306\307\3128!!Q\202K\242\313=\203GG\312U\203G\306\307A@!!\311\306\307\3108!!Q\202K\314\315!\210\316\303!)\207" [val range calc-top-n 1 intv math-constp math-format-number math-float 2 ":" 3 vec error "Range specification must be an interval or 2-vector" calc-pop-stack] 7] string-match "\\[.+\\]" 1 -1 ":" "," " " 0 58 calc-graph-set-command "" "[" "]"] 5])
(defalias 'calc-graph-log-x #[(flag) "\301\302\211#\207" [flag calc-graph-set-log 0] 4 nil "P"])
(defalias 'calc-graph-log-y #[(flag) "\301\302\302#\207" [flag calc-graph-set-log 0] 4 nil "P"])
(defalias 'calc-graph-log-z #[(flag) "\301\302\211#\207" [flag calc-graph-set-log 0] 4 nil "P"])
(defalias 'calc-graph-set-log #[(xflag yflag zflag) "\306\307!\206\310\311\312\"\311\313\"\311\314\"\315
\203/
\316=\203'	\2021\317
!\316V\2021	?\2038\312\2029\310\203R\316=\203I\n\202T\317!\316V\202T\n?\203[\313\202\\\310\203u\316=\203l\202w\317!\316V\202w?\203~\314\202\310Q\320\307\f\310\232?\205\213\f\"-\207" [old xold yold zold str xflag calc-graph-find-command "logscale" "" string-match "x" "y" "z" nil 0 prefix-numeric-value calc-graph-set-command yflag zflag] 4])
(defalias 'calc-graph-line-style #[(style) "\301\205\302!\303\"\207" [style calc-graph-set-styles prefix-numeric-value t] 3 nil "P"])
(defalias 'calc-graph-point-style #[(style) "\301\302\205	\303!\"\207" [style calc-graph-set-styles t prefix-numeric-value] 4 nil "P"])
(defalias 'calc-graph-set-styles #[(lines points &optional yerr) "\306 \210rq\210\307\310\211\"\204\311\312!\210`\310\211\211\211\211\211\211\211$%&'\313\314!\210\315u\210`\211'b\210\316\317!\203o\320\224\321\225b\210\316\322!\203Q\320\224\320\225{&\316\323!\203`\324\320\224\320\225{!%\316\325!\203o\324\320\224\320\225{!$(\204\302&\326\232\206&\327\232&\330\232\206\213&\327\232)\203\244)\331=\204\247)%)\321Y\202\247?*\203\277*\331=\204\302*$*\321Y\202\302\n?
\f|\210
b\210\310\332\333\217(\203\331\334c\210\202L\335	\203\360&\336\232\203\360)\331=\203\360\337\202	\203\n\203\374\327\202	\326\202	\n\203\330\202	\336\261\210$\2038$\321V\2038\340%\203,%\321V\203,\341%!\202-\342\340\341$!\261\210\202L%\203L%\321V\203L\340\341%!\261\210.\n\343 \207" [calc-gnuplot-input errform penbl lenbl end start calc-graph-init calc-graph-find-plot nil error "No data points have been set!" re-search-forward "[,\n]" -1 looking-at "[^,\n]*[^,\n 	]\\([ 	]+with\\)" 1 0 "[ 	]+\\([a-z]+\\)" "[ 	a-z]+\\([0-9]+\\)" string-to-number "[ 	a-z]+[0-9]+[ 	]+\\([0-9]+\\)" "lines" "linespoints" "points" t (byte-code "\300\301\302\303\212\304\305!\210\306\307!)P!!!\207" [math-contains-sdev-p eval intern "var-" re-search-backward ":\\(.*\\)\\}" match-string 1] 6) ((error)) " with yerrorbars" " with " "dots" "yerrorbars" " " int-to-string "1" calc-graph-view-commands pstyle lstyle mode base yerr lines points] 10])
(defalias 'calc-graph-zero-x #[(flag) "\301\302\203\303!\304X\202\305\302!?\205\306\"\207" [flag calc-graph-set-command "noxzeroaxis" prefix-numeric-value 0 calc-graph-find-command " "] 4 nil "P"])
(defalias 'calc-graph-zero-y #[(flag) "\301\302\203\303!\304X\202\305\302!?\205\306\"\207" [flag calc-graph-set-command "noyzeroaxis" prefix-numeric-value 0 calc-graph-find-command " "] 4 nil "P"])
(defalias 'calc-graph-name #[(name) "\305 \210rq\210\306\307\211\"\204\310\311!\210`\307\211\312\313!\210\314\224b\210\315\316!\2033\317\224b\210`	|\210\2026	b\210\320\321\f!\261\210,\322 \207" [calc-gnuplot-input end start base name calc-graph-init calc-graph-find-plot nil error "No data points have been set!" re-search-forward "[,\n]\\|[ 	]+with" 0 looking-at "[^,\n]*[^,\n 	]\\([ 	]+title\\)" 1 " title " prin1-to-string calc-graph-view-commands] 3 nil "sTitle for current curve: "])
(defalias 'calc-graph-hide #[(flag) "\301 \210\302\303\211\"\205;\304\305!\204\306\307!\210\310u\210\304\311!\203-\203)\312!\313X\205;\314\310!\207\2039\312!\313V\205;\311c\207" [flag calc-graph-init calc-graph-find-plot nil looking-at "{" error "Can't hide this curve (wrong format)" 1 "*" prefix-numeric-value 0 delete-char] 3 nil "P"])
(defalias 'calc-graph-header #[(title) "\301\302\303\232?\205\f\304!\"\207" [title calc-graph-set-command "title" "" prin1-to-string] 4 nil "sTitle for entire graph: "])
(defalias 'calc-graph-border #[(flag) "\301\302\203\303!\304X\202\305\302!?\205\306\"\207" [flag calc-graph-set-command "noborder" prefix-numeric-value 0 calc-graph-find-command " "] 4 nil "P"])
(defalias 'calc-graph-grid #[(flag) "\301\302\203\303!\304V\202\305\302!?\205\306\"\207" [flag calc-graph-set-command "grid" prefix-numeric-value 0 calc-graph-find-command " "] 4 nil "P"])
(defalias 'calc-graph-key #[(flag) "\301\302\203\303!\304V\202\305\302!?\205\306\"\207" [flag calc-graph-set-command "key" prefix-numeric-value 0 calc-graph-find-command " "] 4 nil "P"])
(defalias 'calc-graph-num-points #[(res flag) "\203.\304!\305V\203	\306\232\203\307\310\n\"\207\311	!\211\207	\306\232\203(\307\312\"\207\311	!\211\207\313\314	\306\232?\2058	\"\207" [flag res calc-graph-default-resolution calc-graph-default-resolution-3d prefix-numeric-value 0 "" message "Default resolution is %d" string-to-number "Default 3D resolution is %d" calc-graph-set-command "samples"] 4 nil "sNumber of data points: \nP"])
(defalias 'calc-graph-device #[(name flag) "\304\232\203
\305\306!\210\307 \207	\2037\310	!\311V\203(\312\232\203$\313\314\n\"\207\211\207\312\232\2033\313\315\"\207\211\207\316\317\312\232?\205A\"\207" [name flag calc-gnuplot-default-device calc-gnuplot-print-device "?" calc-gnuplot-command "set terminal" calc-graph-view-trail prefix-numeric-value 0 "" message "Default GNUPLOT device is \"%s\"" "GNUPLOT device for Print command is \"%s\"" calc-graph-set-command "terminal"] 4 nil "sDevice name: \nP"])
(defalias 'calc-graph-output #[(name flag) "\304\305\"\203\f\306\2025\304\307\"\203\310\2025\304\311\"\203$\312\2025\313!\314\232\2031\314\2025\315!	\203_\316	!\317V\203P\314\232\203L\320\321\n\"\207\211\207\314\232\203[\320\322\"\207\211\207\323\324\314\232?\205k\325!\"\207" [name flag calc-gnuplot-default-output calc-gnuplot-print-output string-match "\\<[aA][uU][tT][oO]$" "auto" "\\<[tT][tT][yY]$" "tty" "\\<[sS][tT][dD][oO][uU][tT]$" "STDOUT" file-name-nondirectory "" expand-file-name prefix-numeric-value 0 message "Default GNUPLOT output file is \"%s\"" "GNUPLOT output file for Print command is \"%s\"" calc-graph-set-command "output" prin1-to-string] 4 nil "FOutput file name: \np"])
(defalias 'calc-graph-display #[(name) "\302\232\203\303\304	\206
\305\"\207\306 \205\307\310!\207" [name calc-gnuplot-display "" message "Current X display is \"%s\"" "<none>" calc-gnuplot-alive calc-gnuplot-command "exit"] 3 nil "sX display name: "])
(defalias 'calc-graph-geometry #[(name) "\302\232\203\303\304	\206
\305\"\207\305\232?\205\306 \205 \307\310!\207" [name calc-gnuplot-geometry "" message "Current X geometry is \"%s\"" "default" calc-gnuplot-alive calc-gnuplot-command "exit"] 3 nil "sX geometry spec (or \"default\"): "])
(defalias 'calc-graph-find-command #[(cmd) "\302 \210rq\210eb\210\303\304	\305Q\306\307#\205\310\224\310\225{)\207" [calc-gnuplot-input cmd calc-graph-init re-search-forward "^set[ 	]+" "[ 	]*\\(.*\\)$" nil t 1] 4])
(defalias 'calc-graph-set-command #[(cmd &rest args) "\304 \210rq\210eb\210\305\306	\307Q\310\311#\203)\312u\210\310\210`\313 \210`\nT|\210)\202@\314\311\211\"\203<h\315=\203@\312u\210\202@dSb\210\203\\@\203\\n\204P\316c\210\317\320\321	B\322#\316\261\210)\323 \207" [calc-gnuplot-input cmd end args calc-graph-init re-search-forward "^set[ 	]+" "[ 	\n]" nil t -1 beginning-of-line calc-graph-find-plot 10 "\n" "set " mapconcat identity " " calc-graph-view-commands] 5])
(defalias 'calc-graph-command #[(cmd) "\300\301!\207" [calc-do #[nil "\302 \210\303 \210\304!\210	\305\230\206\306 \210\303 \207" [cmd calc-gnuplot-name calc-graph-init calc-graph-view-trail calc-gnuplot-command "pgnuplot" accept-process-output] 2]] 2 nil "sGNUPLOT command: "])
(defalias 'calc-graph-kill #[(&optional no-view) "\300 \210\301 \205\302\303!\207" [calc-graph-delete-temps calc-gnuplot-alive calc-do #[nil "\204\303 \210\304\305\306!\210)\307\310!\210\311\n!\203\312\n!\210\313\211\207" [no-view calc-graph-no-wait calc-gnuplot-process calc-graph-view-trail t calc-gnuplot-command "exit" sit-for 1 process-status delete-process nil] 2]] 2 nil nil])
(defalias 'calc-graph-quit #[nil "\302!\203\n\303\304!\210\302	!\203\305\304!\210\306\304!\207" [calc-gnuplot-input calc-gnuplot-buffer get-buffer-window calc-graph-view-commands t calc-graph-view-trail calc-graph-kill] 2 nil nil])
(defalias 'calc-graph-view-commands #[(&optional no-need) "\204\304 \210\305	\n?#\207" [calc-graph-no-auto-view calc-gnuplot-input calc-gnuplot-buffer no-need calc-graph-init-buffers calc-graph-view] 4 nil "p"])
(defalias 'calc-graph-view-trail #[(&optional no-need) "\204\304 \210\305	\n?#\207" [calc-graph-no-auto-view calc-gnuplot-buffer calc-gnuplot-input no-need calc-graph-init-buffers calc-graph-view] 4 nil "p"])
(defalias 'calc-graph-view #[(buf other-buf need) "\306	\204l\307\n!\211\203A\204l\n\f=\203$r\nq\210\310d\")\203l\311\n!\210\311
!\210\312 \313!\210\314\306!\210\313!\210)\202l\307
!\211\203Q\315\n\"\210\202l\316=\203h\204a\317 \204l\320\n!\210\202l\314\n!\210r\nq\210\n\f=\203\230\307\n!\211\203\230\310d\"\204\230db\210\321\322\323!Z!\210\324`\"\210db\210)	\206\240\325\326!)\207" [win calc-graph-no-auto-view buf need calc-gnuplot-buffer other-buf nil get-buffer-window pos-visible-in-window-p bury-buffer selected-window select-window switch-to-buffer set-window-buffer calc-mode window-full-height-p display-buffer vertical-motion 6 window-height set-window-start sit-for 0 curwin major-mode] 4])
(defalias 'calc-gnuplot-check-for-errors #[nil "\212q\210	b\210\302\303\304\305#db\210d)\205\306 \207" [calc-gnuplot-buffer calc-gnuplot-last-error-pos re-search-forward "^[ 	]+\\^$" nil t calc-graph-view-trail] 4])
(defalias 'calc-gnuplot-command #[(&rest args) "\306 \210\307\310\311#\312P\n\313\230\204\314 \210rq\210\315 \210db\210`
\316Y\204)	c\210\317!`\320\223\210\321	\"\210\322!\203@\323 \210\n\313\230\204Q\314?\205O!\210\315 \210\322!\205\\\323 *\207" [args cmd calc-gnuplot-name calc-gnuplot-buffer calc-gnuplot-trail-mark calc-gnuplot-version calc-graph-init mapconcat identity " " "\n" "pgnuplot" accept-process-output calc-gnuplot-check-for-errors 3 process-mark nil process-send-string get-buffer-window calc-graph-view-trail calc-gnuplot-process calc-graph-no-wait] 4])
(defalias 'calc-graph-init-buffers #[nil "\203\n\302!\204\303\304!	\203\302	!\206\303\305!\211\207" [calc-gnuplot-buffer calc-gnuplot-input buffer-name get-buffer-create "*Gnuplot Trail*" "*Gnuplot Commands*"] 2])
(defalias 'calc-graph-init #[nil "\306 \204\251\307\310\n\203\311\n!\210\310\312 \210rq\210\313c\210`)\310\211%\314\230\203J\315\316!&\317\320&\"\203F\321&\322\224\322\225O!'\202I\322')\323\324\325\217\210rq\210%\314\230\204v\212b\210\326\327\310\307#)\204v\330\n!\331>\203v\332\n!\210\202S\330\n!\333>\204\202\334\335!\210%\314\230\204\245\212b\210\336\337\310\307#)\203\242\321\322\224\322\225{!'\202\245\322'db\210+r(q\210\340 \341U\203\272\342c\202\314)\206\314dSf\343=\206\314db\210\344c)\207" [origin process-connection-type calc-gnuplot-process calc-gnuplot-buffer calc-graph-last-device calc-graph-last-output calc-gnuplot-alive t nil delete-process calc-graph-init-buffers "\nStarting gnuplot...\n" "pgnuplot" shell-command-to-string "pgnuplot -V" string-match "gnuplot \\([0-9]+\\)\\." string-to-number 1 err (byte-code "\306\205\307\310!\232?\205	\311\230?\205\312D\n\205&	\311\230?\205&\313\nD\"\314\315\316\f	%\317
\320\"\210)\320\207" [calc-gnuplot-display calc-gnuplot-name calc-gnuplot-geometry args calc-gnuplot-buffer calc-gnuplot-process append getenv "DISPLAY" "pgnuplot" "-display" "-geometry" apply start-process "gnuplot" set-process-query-on-exit-flag nil] 6) ((file-error (error "Sorry, can't find \"%s\" on your system" calc-gnuplot-name))) search-forward "gnuplot> " process-status (run stop) accept-process-output (run stop) error "Unable to start GNUPLOT process" re-search-forward "G N U P L O T.*\n.*version \\([0-9]+\\)\\." buffer-size 0 "# Commands for running gnuplot\n\n\n" 10 "\n" calc-gnuplot-name version-str calc-gnuplot-version calc-gnuplot-input calc-graph-no-auto-view] 5])
(provide 'calc-graph)

MMCT - 2023