From 4083eeee521e8f7367073c50955599a3ee72bdc7 Mon Sep 17 00:00:00 2001 From: Houtan Bastani <houtan@dynare.org> Date: Tue, 20 Oct 2015 12:58:30 +0200 Subject: [PATCH] when plotting series that are all zeros, set the y range --- src/@graph/writeGraphFile.m | 10 ++++++++++ src/@report_series/isZero.m | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 src/@report_series/isZero.m diff --git a/src/@graph/writeGraphFile.m b/src/@graph/writeGraphFile.m index c5dbfda..14f7de4 100644 --- a/src/@graph/writeGraphFile.m +++ b/src/@graph/writeGraphFile.m @@ -154,6 +154,16 @@ else end if isempty(o.yrange) + nonzeroseries = false; + for i=1:ne + if ~o.series{i}.isZero() + nonzeroseries = true; + break; + end + end + if ~nonzeroseries + fprintf(fid, 'ymin=-1,\nymax=1,\n'); + end if o.yAxisTight fprintf(fid, 'enlarge y limits=false,\n'); else diff --git a/src/@report_series/isZero.m b/src/@report_series/isZero.m new file mode 100644 index 0000000..5982efe --- /dev/null +++ b/src/@report_series/isZero.m @@ -0,0 +1,32 @@ +function tf = isZero(o) +%function o = isZero(o) +% Write the tikz file that contains the graph +% +% INPUTS +% o [report_series] report_series object +% +% OUTPUTS +% o [report_series] report_series object +% +% SPECIAL REQUIREMENTS +% none + +% Copyright (C) 2015 Dynare Team +% +% This file is part of Dynare. +% +% Dynare is free software: you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation, either version 3 of the License, or +% (at your option) any later version. +% +% Dynare is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with Dynare. If not, see <http://www.gnu.org/licenses/>. + +tf = all(o.data.data == 0); +end -- GitLab