annotate NEWS @ 6329:1d4b4312f782

[project @ 2007-02-20 06:37:09 by jwe]
author jwe
date Tue, 20 Feb 2007 06:37:09 +0000
parents 9223672bd578
children 182c4b62775d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5913
e915287e3ef9 [project @ 2006-07-28 17:06:14 by jwe]
jwe
parents: 5814
diff changeset
1 Summary of important user-visible changes for version 3.0:
e915287e3ef9 [project @ 2006-07-28 17:06:14 by jwe]
jwe
parents: 5814
diff changeset
2 ---------------------------------------------------------
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
3
6329
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
4 ** Compatibility with Matlab graphics is much better now. We now
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
5 have some graphics features that work like Matlab's Handle
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
6 Graphics (tm):
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
7
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
8 + You can make a subplot and then use the print function to
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
9 generate file with the plot.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
10
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
11 + RGB line colors are supported if you use gnuplot 4.2. Octave
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
12 can still use gnuplot 4.0, but there is no longer any way to set
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
13 line colors with it when using the Matlab-style plot functions.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
14 Actually, there never was any way to do this reliably with older
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
15 versions of gnuplot (whether run from Octave or not) since it
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
16 only provided a limited set to choose from, and they were
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
17 terminal dependent, so choosing color 1 with the X11 terminal
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
18 would be different from color 1 with the PostScript terminal.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
19
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
20 + You can control the width of lines using (for example):
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
21
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
22 line (x, y, "linewidth", 4, "color", [1, 0, 0.5]);
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
23
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
24 (this also shows the color feature).
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
25
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
26 + With gnuplot 4.2, image data is plotted with gnuplot and may be
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
27 combined with other 2-d plot data.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
28
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
29 + Lines for contour plots are generated with an Octave function, so
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
30 contour plots are now 2-d plots instead of special 3-d plots, and
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
31 this allows you to plot additional 2-d data on top of a contour
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
32 plot.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
33
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
34 + It is no longer possible to mix Matlab-style plot commands with
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
35 the old (and now considered obsolete) style of plot commands
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
36 (__gnuplot_set__, etc.). You can do one or the other, but not
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
37 both for the same plot.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
38
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
39 + Plot property values are not extensively checked. Specifying
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
40 invalid property values may produce unpredictible results.
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
41
1d4b4312f782 [project @ 2007-02-20 06:37:09 by jwe]
jwe
parents: 5995
diff changeset
42
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
43 ** The way Octave handles search paths has changed. Instead of
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
44 setting the built-in variable LOADPATH, you must use addpath,
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
45 rmpath, or path to manipulate the function search path. These
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
46 functions will maintain "." at the head of the path, for
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
47 compatibility with Matlab.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
48
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
49 Leading, trailing or doubled colons are no longer special.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
50 Now, all elements of the search path are explicitly included in
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
51 the path when Octave starts. To display the path, use the path
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
52 function.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
53
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
54 Path elements that end in // are no longer searched recursively.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
55 Instead, you may use addpath and the genpath function to add an
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
56 entire directory tree to the path. For example,
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
57
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
58 addpath (genpath ("~/octave"));
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
59
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
60 will add ~/octave and all directories below it to the head of the
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
61 path.
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
62
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
63
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
64 ** Previous versions of Octave had a number of built-in variables to
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
65 control warnings (for example, warn_divide_by_zero). These
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
66 variables have been replaced by warning identifiers that are used
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
67 with the warning function to control the state of warnings.
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
68
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
69 For example, instead of writing
2511
9b0dd36714eb [project @ 1996-11-14 02:57:33 by jwe]
jwe
parents: 2496
diff changeset
70
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
71 warn_divide_by_zero = false;
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
72
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
73 to disable divide-by-zero warnings, you should write
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
74
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
75 warning ("off", "Octave:divide-by-zero");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
76
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
77 You may use the same technique in your own code to control
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
78 warnings. For example, you can use
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
79
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
80 warning ("My-package:phase-of-the-moon",
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
81 "the phase of the moon could cause trouble today");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
82
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
83 to allow users to control this warning using the
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
84 "My-package:phase-of-the-moon" warning identifier.
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
85
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
86 You may also enable or disable all warnings, or turn them into
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
87 errors:
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
88
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
89 warning ("on", "all");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
90 warning ("off", "all");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
91 warning ("error", "Octave:divide-by-zero");
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
92 warning ("error", "all");
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
93
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
94 You can query the state of current warnings using
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
95
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
96 warning ("query", ID)
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
97 warning ("query")
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
98
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
99 (only those warning IDs which have been explicitly set are
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
100 returned).
2459
0a2cd53db5f9 [project @ 1996-11-03 03:36:01 by jwe]
jwe
parents: 2458
diff changeset
101
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
102 A partial list and description of warning identifiers is available
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
103 using
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
104
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
105 help warning_ids
2452
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
106
a28ed603c65c [project @ 1996-10-31 19:49:29 by jwe]
jwe
parents:
diff changeset
107
5814
67bf9b4f2ae2 [project @ 2006-05-11 21:58:34 by jwe]
jwe
parents: 5798
diff changeset
108 ** All built-in variables have been converted to functions. This
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
109 change simplifies the interpreter and allows a consistent
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
110 interface to internal variables for user-defined packages and the
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
111 core functions distributed with Octave. In most cases, code that
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
112 simply accesses internal variables does not need to change. Code
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
113 that sets internal variables will change. For example, instead of
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
114 writing
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
115
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
116 PS1 = ">> ";
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
117
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
118 you will need to write
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
119
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
120 PS1 (">> ");
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
121
5798
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
122 If you need write code that will run in both old and new versions
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
123 of Octave, you can use something like
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
124
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
125 if (exist ("OCTAVE_VERSION") == 5)
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
126 ## New:
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
127 PS1 (">> ");
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
128 else
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
129 ## Old:
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
130 PS1 = ">> ";
7e7ed81f5566 [project @ 2006-05-09 17:24:33 by jwe]
jwe
parents: 5794
diff changeset
131 endif
5794
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
132
1138ced03f14 [project @ 2006-05-08 20:23:04 by jwe]
jwe
parents: 5781
diff changeset
133
5995
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
134 ** For compatibility with Matlab, the output order of Octave's
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
135 "system" function has changed from
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
136
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
137 [output, status] = system (cmd);
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
138
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
139 to
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
140
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
141 [status, output] = system (cmd);
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
142
9223672bd578 [project @ 2006-09-21 20:09:44 by jwe]
jwe
parents: 5913
diff changeset
143
5781
faafc2d98b8d [project @ 2006-05-02 19:40:19 by jwe]
jwe
parents: 3482
diff changeset
144 See NEWS.2 for old news.