Mercurial > hg > octave-nkf
diff scripts/plot/private/__go_draw_axes__.m @ 16994:333243133364
Use matrix concatenation for strings, rather than cstrcat(), for clarity and performance.
matrix concatenation is ~80% faster than cstrcat().
* doc/interpreter/strings.txi: Document preference for matrix concatenation
as opposed to alternatives.
* doc/interpreter/geometryimages.m, doc/interpreter/interpimages.m,
doc/interpreter/plotimages.m, doc/interpreter/sparseimages.m,
doc/interpreter/splineimages.m, scripts/general/genvarname.m,
scripts/general/int2str.m, scripts/general/num2str.m,
scripts/help/__makeinfo__.m, scripts/help/help.m,
scripts/miscellaneous/copyfile.m, scripts/miscellaneous/dir.m,
scripts/miscellaneous/edit.m, scripts/miscellaneous/fact.m,
scripts/miscellaneous/fullfile.m, scripts/miscellaneous/mkoctfile.m,
scripts/miscellaneous/movefile.m, scripts/miscellaneous/perl.m,
scripts/miscellaneous/python.m, scripts/miscellaneous/run.m,
scripts/miscellaneous/tempdir.m, scripts/miscellaneous/unpack.m,
scripts/pkg/private/configure_make.m, scripts/pkg/private/create_pkgadddel.m,
scripts/pkg/private/extract_pkg.m, scripts/pkg/private/get_description.m,
scripts/pkg/private/get_forge_pkg.m, scripts/pkg/private/getarch.m,
scripts/pkg/private/getarchprefix.m, scripts/pkg/private/install.m,
scripts/pkg/private/installed_packages.m,
scripts/pkg/private/load_packages_and_dependencies.m,
scripts/pkg/private/rebuild.m, scripts/pkg/private/repackage.m,
scripts/pkg/private/shell.m, scripts/pkg/private/uninstall.m,
scripts/plot/private/__go_draw_axes__.m, scripts/signal/spectral_adf.m,
scripts/signal/spectral_xdf.m, scripts/statistics/tests/z_test.m,
scripts/statistics/tests/z_test_2.m, scripts/strings/mat2str.m,
scripts/strings/strtok.m, scripts/testfun/__run_test_suite__.m,
scripts/testfun/assert.m, scripts/testfun/demo.m, scripts/testfun/speed.m,
scripts/testfun/test.m, test/eval-catch.tst, test/io.tst, test/try.tst: Replace
cstrcat() with matrix concatenation where possible.
author | Rik <rik@octave.org> |
---|---|
date | Wed, 17 Jul 2013 14:02:32 -0700 |
parents | e39f00a32dc7 |
children | c3c1ebfaa7dc |
line wrap: on
line diff
--- a/scripts/plot/private/__go_draw_axes__.m +++ b/scripts/plot/private/__go_draw_axes__.m @@ -564,7 +564,7 @@ titlespec{data_idx} = "title \"\""; else tmp = undo_string_escapes (__maybe_munge_text__ (enhanced, obj, "displayname")); - titlespec{data_idx} = cstrcat ("title \"", tmp, "\""); + titlespec{data_idx} = ['title "' tmp '"']; endif usingclause{data_idx} = sprintf ("record=%d", numel (obj.xdata)); errbars = ""; @@ -683,7 +683,7 @@ titlespec{local_idx} = "title \"\""; else tmp = undo_string_escapes (__maybe_munge_text__ (enhanced, obj, "displayname")); - titlespec{local_idx} = cstrcat ("title \"", tmp, "\""); + titlespec{local_idx} = ['title "' tmp '"']; endif if (isfield (obj, "facecolor")) if ((strncmp (obj.facecolor, "flat", 4) @@ -1119,7 +1119,7 @@ titlespec{data_idx} = "title \"\""; else tmp = undo_string_escapes (__maybe_munge_text__ (enhanced, obj, "displayname")); - titlespec{data_idx} = cstrcat ("title \"", tmp, "\""); + titlespec{data_idx} = ['title "' tmp '"']; endif withclause{data_idx} = sprintf ("with pm3d linestyle %d", data_idx); @@ -2262,17 +2262,17 @@ if (! isempty (t.fontangle) && (strcmpi (t.fontangle, "italic") || strcmpi (t.fontangle, "oblique"))) - f = cstrcat (f, "-bolditalic"); + f = [f "-bolditalic"]; it = true; bld = true; else - f = cstrcat (f, "-bold"); + f = [f "-bold"]; bld = true; endif elseif (! isempty (t.fontangle) && (strcmpi (t.fontangle, "italic") || strcmpi (t.fontangle, "oblique"))) - f = cstrcat (f, "-italic"); + f = [f "-italic"]; it = true; endif if (isempty (t.fontsize)) @@ -2367,7 +2367,7 @@ for i = length (s) : -1 : 1 ## special case for "\0" and replace with "{/Symbol \306}' if (strncmp (m{i}, '\0', 2)) - str = cstrcat (str(1:s(i) - 1), '{/Symbol \306}', str(s(i) + 2:end)); + str = [str(1:s(i) - 1) '{/Symbol \306}' str(s(i) + 2:end)]; else f = m{i}(2:end); if (isfield (sym, f)) @@ -2382,28 +2382,24 @@ ##elseif (it) ## g = regexprep (g, '/Symbol', '/Symbol-italic'); ##endif - str = cstrcat (str(1:s(i) - 1), g, str(e(i) + 1:end)); + str = [str(1:s(i) - 1) g str(e(i) + 1:end)]; elseif (strncmp (f, "rm", 2)) bld = false; it = false; - str = cstrcat (str(1:s(i) - 1), '/', fnt, ' ', str(s(i) + 3:end)); + str = [str(1:s(i) - 1) '/' fnt ' ' str(s(i) + 3:end)]; elseif (strncmp (f, "it", 2) || strncmp (f, "sl", 2)) it = true; if (bld) - str = cstrcat (str(1:s(i) - 1), '/', fnt, '-bolditalic ', - str(s(i) + 3:end)); + str = [str(1:s(i) - 1) '/' fnt '-bolditalic ' str(s(i) + 3:end)]; else - str = cstrcat (str(1:s(i) - 1), '/', fnt, '-italic ', - str(s(i) + 3:end)); + str = [str(1:s(i) - 1) '/' fnt '-italic ' str(s(i) + 3:end)]; endif elseif (strncmp (f, "bf", 2)) bld = true; if (it) - str = cstrcat (str(1:s(i) - 1), '/', fnt, '-bolditalic ', - str(2(i) + 3:end)); + str = [str(1:s(i) - 1) '/' fnt '-bolditalic ' str(s(i) + 3:end)]; else - str = cstrcat (str(1:s(i) - 1), '/', fnt, '-bold ', - str(s(i) + 3:end)); + str = [str(1:s(i) - 1) '/' fnt '-bold ' str(s(i) + 3:end)]; endif elseif (strcmpi (f, "color")) ## FIXME Ignore \color but remove trailing {} block as well @@ -2411,7 +2407,7 @@ if (isempty (d)) warning ('syntax error in \color argument'); else - str = cstrcat (str(1:s(i) - 1), str(e(i) + d + 1:end)); + str = [str(1:s(i) - 1) str(e(i) + d + 1:end)]; endif elseif (strcmpi (f, "fontname")) b1 = strfind (str(e(i) + 1:end),'{'); @@ -2419,9 +2415,8 @@ if (isempty (b1) || isempty (b2)) warning ('syntax error in \fontname argument'); else - str = cstrcat (str(1:s(i) - 1), '/', - str(e(i)+b1(1) + 1:e(i)+b2(1)-1), '{}', - str(e(i) + b2(1) + 1:end)); + str = [str(1:s(i) - 1), '/', str(e(i)+b1(1) + 1:e(i)+b2(1)-1), ... + '{}', str(e(i) + b2(1) + 1:end)]; endif elseif (strcmpi (f, "fontsize")) b1 = strfind (str(e(i) + 1:end),'{'); @@ -2429,9 +2424,8 @@ if (isempty (b1) || isempty (b2)) warning ('syntax error in \fontname argument'); else - str = cstrcat (str(1:s(i) - 1), '/=', - str(e(i)+b1(1) + 1:e(i)+b2(1)-1), '{}', - str(e(i) + b2(1) + 1:end)); + str = [str(1:s(i) - 1), '/=', str(e(i)+b1(1) + 1:e(i)+b2(1)-1), ... + '{}', str(e(i) + b2(1) + 1:end)]; endif else ## Last desperate attempt to treat the symbol. Look for things @@ -2449,8 +2443,7 @@ ##elseif (it) ## g = regexprep (g, '/Symbol', '/Symbol-italic'); ##endif - str = cstrcat (str(1:s(i) - 1), g, - str(s(i) + length (flds{j}) + 1:end)); + str = [str(1:s(i) - 1) g str(s(i) + length (flds{j}) + 1:end)]; break; endif endfor @@ -2507,16 +2500,16 @@ if (length_string (str(s(i)+p+2:s(i)+p+l1-1)) <= length_string (str(s(i+1)+p+2:s(i+1)+p+l2-1))) ## Shortest already first! - str = cstrcat (str(1:s(i)+p-1), "@", str(s(i)+p:end)); + str = [str(1:s(i)+p-1) "@" str(s(i)+p:end)]; else ## Have to swap sub/super-script to get shortest first. - str = cstrcat (str(1:s(i)+p-1), "@", str(s(i+1)+p:s(i+1)+p+l2), - str(s(i)+p:s(i)+p+l1), str(s(i+1)+p+l2+1:end)); + str = [str(1:s(i)+p-1), "@", str(s(i+1)+p:s(i+1)+p+l2), ... + str(s(i)+p:s(i)+p+l1), str(s(i+1)+p+l2+1:end)]; endif else ## Have to swap sub/super-script to get shortest first. - str = cstrcat (str(1:s(i)+p-1), "@", str(s(i+1)+p:s(i+1)+p+1), - str(s(i)+p:s(i)+p+l1), str(s(i+1)+p+2:end)); + str = [str(1:s(i)+p-1), "@", str(s(i+1)+p:s(i+1)+p+1), ... + str(s(i)+p:s(i)+p+l1), str(s(i+1)+p+2:end)]; endif i += 2; p ++; @@ -2526,7 +2519,7 @@ else if (s(i+1) == s(i) + 2) ## Shortest already first! - str = cstrcat (str(1:s(i)+p-1), "@", str(s(i)+p:end)); + str = [str(1:s(i)+p-1) "@" str(s(i)+p:end)]; p ++; i += 2; else