From 312d053ae1a8cc1a6e211d254259c32ec63ffa7c Mon Sep 17 00:00:00 2001
From: Johannes Pfeifer <jpfeifer@gmx.de>
Date: Wed, 17 Jun 2020 20:23:49 +0200
Subject: [PATCH] Use LaTeX labels in figures
---
matlab/PlotPosteriorDistributions.m | 20 ++-----
matlab/PosteriorIRF.m | 6 --
matlab/PosteriorIRF_core2.m | 7 ++-
.../convergence_diagnostics/McMCDiagnostics.m | 54 +++++++-----------
matlab/dynare_estimation_1.m | 57 +++----------------
matlab/forecast_graphs.m | 14 ++++-
matlab/get_the_name.m | 8 +--
matlab/mode_check.m | 19 ++-----
matlab/plot_priors.m | 18 ++----
matlab/pm3.m | 19 +------
matlab/pm3_core.m | 11 +++-
matlab/prior_posterior_statistics.m | 2 +-
matlab/rplot.m | 33 ++++++++---
matlab/stoch_simul.m | 27 +++++----
14 files changed, 118 insertions(+), 177 deletions(-)
diff --git a/matlab/PlotPosteriorDistributions.m b/matlab/PlotPosteriorDistributions.m
index 99b81a01be..aac95569fb 100644
--- a/matlab/PlotPosteriorDistributions.m
+++ b/matlab/PlotPosteriorDistributions.m
@@ -66,17 +66,6 @@ for i=1:npar
hfig=dyn_figure(options_.nodisplay, 'Name', figurename);
end
[nam,texnam] = get_the_name(i, TeX, M_, estim_params_, options_);
- if subplotnum == 1
- NAMES = {nam};
- if TeX
- TeXNAMES = {texnam};
- end
- else
- NAMES = [NAMES; {nam}];
- if TeX
- TeXNAMES = [TeXNAMES; {texnam}];
- end
- end
[x2, f2, abscissa, dens, binf2, bsup2] = draw_prior_density(i, bayestopt_);
top2 = max(f2);
if i <= nvx
@@ -148,16 +137,17 @@ for i=1:npar
end
box on
axis([borneinf bornesup 0 1.1*top0])
- title(nam, 'Interpreter', 'none')
+ if TeX
+ title(texnam, 'Interpreter', 'latex')
+ else
+ title(nam, 'Interpreter', 'none')
+ end
hold off
drawnow
if subplotnum == MaxNumberOfPlotPerFigure || i == npar
dyn_saveas(hfig,[OutputDirectoryName '/' M_.fname '_PriorsAndPosteriors' int2str(figunumber)], options_.nodisplay, options_.graph_format);
if TeX && any(strcmp('eps', cellstr(options_.graph_format)))
fprintf(fidTeX, '\\begin{figure}[H]\n');
- for j = 1:size(NAMES, 1)
- fprintf(fidTeX, '\\psfrag{%s}[1][][0.5][0]{%s}\n', NAMES{j}, TeXNAMES{j});
- end
fprintf(fidTeX, '\\centering\n');
fprintf(fidTeX, '\\includegraphics[width=%2.2f\\textwidth]{%s/%s_PriorsAndPosteriors%s}\n', ...
options_.figures.textwidth*min(subplotnum/nn,1), OutputDirectoryName, M_.fname, int2str(figunumber));
diff --git a/matlab/PosteriorIRF.m b/matlab/PosteriorIRF.m
index 6f6deb913b..07b11383c0 100644
--- a/matlab/PosteriorIRF.m
+++ b/matlab/PosteriorIRF.m
@@ -391,7 +391,6 @@ if ~options_.nograph && ~options_.no_graph.posterior
% The files .TeX are genereted in sequential way always!
- % The files .TeX are generated in sequential way always!
subplotnum = 0;
titTeX(M_.exo_names_orig_ord) = M_.exo_names_tex;
if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
@@ -411,9 +410,6 @@ if ~options_.nograph && ~options_.no_graph.posterior
if subplotnum == 1
fprintf(fidTeX,'\\begin{figure}[H]\n');
end
- name = varlist{jj};
- texname = varlist_TeX{jj};
- fprintf(fidTeX,['\\psfrag{%s}[1][][0.5][0]{%s}\n'],name,['$' texname '$']);
end
if subplotnum == MaxNumberOfPlotPerFigure || (jj == nvar && subplotnum> 0)
figunumber = figunumber+1;
@@ -438,8 +434,6 @@ if ~options_.nograph && ~options_.no_graph.posterior
% The others file format are generated in parallel by PosteriorIRF_core2!
-
- % Comment for testing!
if ~isoctave
if isnumeric(options_.parallel) || (M_.exo_nbr*ceil(length(varlist)/MaxNumberOfPlotPerFigure))<8
[fout] = PosteriorIRF_core2(localVars,1,M_.exo_nbr,0);
diff --git a/matlab/PosteriorIRF_core2.m b/matlab/PosteriorIRF_core2.m
index 2b95c570fd..522888e389 100644
--- a/matlab/PosteriorIRF_core2.m
+++ b/matlab/PosteriorIRF_core2.m
@@ -142,8 +142,11 @@ for i=fpar:npar
remove_fractional_xticks;
hold off
end
- name = varlist{j};
- title(name,'Interpreter','none')
+ if options_.TeX
+ title(['$' varlist_TeX{j} '$'],'Interpreter','latex')
+ else
+ title(varlist{j},'Interpreter','none')
+ end
else
if options_.debug
fprintf('POSTERIOR_IRF: The IRF of %s to %s is smaller than the irf_plot_threshold of %4.3f and will not be displayed.\n',varlist{j},tit{i},options_.impulse_responses.plot_threshold)
diff --git a/matlab/convergence_diagnostics/McMCDiagnostics.m b/matlab/convergence_diagnostics/McMCDiagnostics.m
index 44c4f872df..69d3682912 100644
--- a/matlab/convergence_diagnostics/McMCDiagnostics.m
+++ b/matlab/convergence_diagnostics/McMCDiagnostics.m
@@ -306,31 +306,24 @@ for i = 1:pages
plt2 = UDIAG(:,6,k);
namnam = [nam , ' (m3)'];
end
- if TeX
- if j==1
- NAMES = deblank(namnam);
- TEXNAMES = deblank(namtex);
- else
- NAMES = char(NAMES,deblank(namnam));
- TEXNAMES = char(TEXNAMES,deblank(namtex));
- end
- end
subplot(3,3,boxplot);
plot(xx,plt1,'-b'); % Pooled
hold on;
plot(xx,plt2,'-r'); % Within (mean)
hold off;
xlim([xx(1) xx(NumberOfLines)])
- title(namnam,'Interpreter','none')
+ if TeX
+ title(namtex,'interpreter','latex')
+ else
+ title(namnam,'Interpreter','none')
+ end
+
boxplot = boxplot + 1;
end
end
dyn_saveas(h,[OutputFolder '/' ModelName '_udiag' int2str(i)],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:size(NAMES,1)
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TEXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_udiag%s}\n',options_.figures.textwidth*min((boxplot-1)/3,1),[OutputFolder '/' ModelName],int2str(i));
fprintf(fidTeX,'\\caption{Univariate convergence diagnostics for the Metropolis-Hastings.\n');
@@ -360,22 +353,22 @@ if reste
plt1 = UDIAG(:,1,k);
plt2 = UDIAG(:,2,k);
namnam = [nam , ' (Interval)'];
+ if TeX
+ namnamtex = [namtex , ' (Interval)'];
+ end
elseif crit == 2
plt1 = UDIAG(:,3,k);
plt2 = UDIAG(:,4,k);
namnam = [nam , ' (m2)'];
+ if TeX
+ namnamtex = [namtex , ' (m2)'];
+ end
elseif crit == 3
plt1 = UDIAG(:,5,k);
plt2 = UDIAG(:,6,k);
namnam = [nam , ' (m3)'];
- end
- if TeX
- if j==1
- NAMES = deblank(namnam);
- TEXNAMES = deblank(namtex);
- else
- NAMES = char(NAMES,deblank(namnam));
- TEXNAMES = char(TEXNAMES,deblank(namtex));
+ if TeX
+ namnamtex = [namtex , ' (m3)'];
end
end
subplot(nr,nc,boxplot);
@@ -384,16 +377,17 @@ if reste
plot(xx,plt2,'-r'); % Within (mean)
hold off;
xlim([xx(1) xx(NumberOfLines)]);
- title(namnam,'Interpreter','none');
+ if TeX
+ title(namnamtex,'Interpreter','latex');
+ else
+ title(namnam,'Interpreter','none');
+ end
boxplot = boxplot + 1;
end
end
dyn_saveas(h,[ OutputFolder '/' ModelName '_udiag' int2str(pages+1)],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:size(NAMES,1)
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TEXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_udiag%s}\n',options_.figures.textwidth*min((boxplot-1)/nc,1),[OutputFolder '/' ModelName],int2str(pages+1));
if reste == 2
@@ -477,13 +471,6 @@ for crit = 1:3
plt2 = MDIAG(:,6);
namnam = 'm3';
end
- if TeX
- if crit == 1
- NAMES = deblank(namnam);
- else
- NAMES = char(NAMES,deblank(namnam));
- end
- end
subplot(3,1,boxplot);
plot(xx,plt1,'-b'); % Pooled
hold on
@@ -497,9 +484,6 @@ dyn_saveas(h,[ OutputFolder '/' ModelName '_mdiag'],options_.nodisplay,options_.
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:3
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),' ');
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=0.8\\textwidth]{%s_mdiag}\n',[OutputFolder '/' ModelName]);
fprintf(fidTeX,'\\caption{Multivariate convergence diagnostics for the Metropolis-Hastings.\n');
diff --git a/matlab/dynare_estimation_1.m b/matlab/dynare_estimation_1.m
index e27931d1d7..e2dbfc9f77 100644
--- a/matlab/dynare_estimation_1.m
+++ b/matlab/dynare_estimation_1.m
@@ -589,11 +589,6 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
plot(1:gend,innov(k,:),marker_string{2,1},'linewidth',1)
hold off
name = M_.exo_names{k};
- if isempty(NAMES)
- NAMES = name;
- else
- NAMES = char(NAMES,name);
- end
if ~isempty(options_.XTick)
set(gca,'XTick',options_.XTick)
set(gca,'XTickLabel',options_.XTickLabel)
@@ -602,21 +597,14 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
xlim([1 gend])
end
if options_.TeX
- texname = M_.exo_names_tex{k};
- if isempty(TeXNAMES)
- TeXNAMES = ['$ ' deblank(texname) ' $'];
- else
- TeXNAMES = char(TeXNAMES,['$ ' deblank(texname) ' $']);
- end
+ title(['$' M_.exo_names_tex{k} '$'],'Interpreter','latex')
+ else
+ title(name,'Interpreter','none')
end
- title(name,'Interpreter','none')
end
dyn_saveas(fh,[M_.fname, '/graphs/' M_.fname '_SmoothedShocks' int2str(plt)],options_.nodisplay,options_.graph_format);
if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:nstar0
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TeXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_SmoothedShocks%s}\n',options_.figures.textwidth*min(i/nc,1),[M_.fname, '/graphs/' M_.fname],int2str(plt));
fprintf(fidTeX,'\\caption{Smoothed shocks.}');
@@ -650,8 +638,6 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
end
for plt = 1:nbplt
fh = dyn_figure(options_.nodisplay,'Name','Smoothed observation errors');
- NAMES = [];
- if options_.TeX, TeXNAMES = []; end
nstar0=min(nstar,number_of_plots_to_draw-(plt-1)*nstar);
if gend==1
marker_string{1,1}='-ro';
@@ -671,32 +657,20 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
if gend>1
xlim([1 gend])
end
- if isempty(NAMES)
- NAMES = name;
- else
- NAMES = char(NAMES,name);
- end
if ~isempty(options_.XTick)
set(gca,'XTick',options_.XTick)
set(gca,'XTickLabel',options_.XTickLabel)
end
if options_.TeX
idx = strmatch(options_.varobs{index(k)}, M_.endo_names, 'exact');
- texname = M_.endo_names_tex{idx};
- if isempty(TeXNAMES)
- TeXNAMES = ['$ ' texname ' $'];
- else
- TeXNAMES = char(TeXNAMES,['$ ' texname ' $']);
- end
+ title(['$' M_.endo_names_tex{idx} '$'],'Interpreter','latex')
+ else
+ title(name,'Interpreter','none')
end
- title(name,'Interpreter','none')
end
dyn_saveas(fh,[M_.fname, '/graphs/' M_.fname '_SmoothedObservationErrors' int2str(plt)],options_.nodisplay,options_.graph_format);
if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:nstar0
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TeXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_SmoothedObservationErrors%s}\n',options_.figures.textwidth*min(i/nc,1),[M_.fname, '/graphs/' M_.fname],int2str(plt));
fprintf(fidTeX,'\\caption{Smoothed observation errors.}');
@@ -726,7 +700,6 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
for plt = 1:nbplt
fh = dyn_figure(options_.nodisplay,'Name','Historical and smoothed variables');
NAMES = [];
- if options_.TeX, TeXNAMES = []; end
nstar0=min(nstar,n_varobs-(plt-1)*nstar);
if gend==1
marker_string{1,1}='-ro';
@@ -743,11 +716,6 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
plot(1:gend,rawdata(:,k),marker_string{2,1},'linewidth',1)
hold off
name = options_.varobs{k};
- if isempty(NAMES)
- NAMES = name;
- else
- NAMES = char(NAMES,name);
- end
if ~isempty(options_.XTick)
set(gca,'XTick',options_.XTick)
set(gca,'XTickLabel',options_.XTickLabel)
@@ -757,21 +725,14 @@ if (~((any(bayestopt_.pshape > 0) && options_.mh_replic) || (any(bayestopt_.psha
end
if options_.TeX
idx = strmatch(options_.varobs{k}, M_.endo_names,'exact');
- texname = M_.endo_names_tex{idx};
- if isempty(TeXNAMES)
- TeXNAMES = ['$ ' texname ' $'];
- else
- TeXNAMES = char(TeXNAMES,['$ ' texname ' $']);
- end
+ title(['$' M_.endo_names_tex{idx} '$'],'Interpreter','latex')
+ else
+ title(name,'Interpreter','none')
end
- title(name,'Interpreter','none')
end
dyn_saveas(fh,[M_.fname, '/graphs/' M_.fname '_HistoricalAndSmoothedVariables' int2str(plt)],options_.nodisplay,options_.graph_format);
if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:nstar0
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TeXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_HistoricalAndSmoothedVariables%s}\n',options_.figures.textwidth*min(i/nc,1),[M_.fname, '/graphs/' M_.fname],int2str(plt));
fprintf(fidTeX,'\\caption{Historical and smoothed variables.}');
diff --git a/matlab/forecast_graphs.m b/matlab/forecast_graphs.m
index e2815c76c5..00006d0e26 100644
--- a/matlab/forecast_graphs.m
+++ b/matlab/forecast_graphs.m
@@ -87,7 +87,12 @@ for j= 1:nvar
plot([NaN(obs,1); hpdinf.(vn)],'b-');
hold on
plot([NaN(obs,1); hpdsup.(vn)],'b-');
- title(vn,'Interpreter','none');
+ if options_.TeX
+ temp=strmatch(vn,M_.endo_names,'exact');
+ title(['$' M_.endo_names_tex{temp} '$'],'Interpreter','latex');
+ else
+ title(vn,'Interpreter','none');
+ end
xlim([1 obs+length(hpdsup.(vn))])
hold off
m = m + 1;
@@ -145,7 +150,12 @@ if isfield(oo_.forecast,'HPDinf_ME')
plot([NaN(obs,1); oo_.forecast.HPDinf_ME.(vn)],'b-');
hold on
plot([NaN(obs,1); oo_.forecast.HPDsup_ME.(vn)],'b-');
- title(vn,'Interpreter','none');
+ if options_.TeX
+ temp=strmatch(vn,M_.endo_names,'exact');
+ title(['$' M_.endo_names_tex{temp} '$'],'Interpreter','latex');
+ else
+ title(vn,'Interpreter','none');
+ end
xlim([1 obs+length(oo_.forecast.HPDsup_ME.(vn))])
hold off
m = m + 1;
diff --git a/matlab/get_the_name.m b/matlab/get_the_name.m
index 7da451d117..d7dddee6d0 100644
--- a/matlab/get_the_name.m
+++ b/matlab/get_the_name.m
@@ -70,14 +70,14 @@ if k <= nvx
nam = sprintf('SE_%s', vname);
if TeX
tname = M_.exo_names_tex{estim_params_.var_exo(k,1)};
- texnam = sprintf('$ SE_{%s} $', tname);
+ texnam = sprintf('$ \\sigma_{%s} $', tname);
end
elseif k <= (nvx+nvn)
vname = options_.varobs{estim_params_.nvn_observable_correspondence(k-estim_params_.nvx,1)};
nam = sprintf('SE_EOBS_%s', vname);
if TeX
tname = M_.endo_names_tex{estim_params_.var_endo(k-estim_params_.nvx,1)};
- texnam = sprintf('$ EOBS SE_{%s} $', tname);
+ texnam = sprintf('$ \\sigma^{ME}_{%s} $', tname);
end
elseif k <= (nvx+nvn+ncx)
jj = k - (nvx+nvn);
@@ -87,7 +87,7 @@ elseif k <= (nvx+nvn+ncx)
nam = sprintf('CC_%s', vname);
if TeX
tname = sprintf('%s,%s', M_.exo_names_tex{k1}, M_.exo_names_tex{k2});
- texnam = sprintf('$ CC_{%s} $', tname);
+ texnam = sprintf('$ \\rho_{%s} $', tname);
end
elseif k <= (nvx+nvn+ncx+ncn)
jj = k - (nvx+nvn+ncx);
@@ -97,7 +97,7 @@ elseif k <= (nvx+nvn+ncx+ncn)
nam = sprintf('CC_EOBS_%s', vname);
if TeX
tname = sprintf('%s,%s', M_.endo_names_tex{k1}, M_.endo_names_tex{k2});
- texnam = sprintf('$ EOBS CC_{%s} $', tname);
+ texnam = sprintf('$ \\rho^{ME}_{%s} $', tname);
end
else
jj = k - (nvx+nvn+ncx+ncn);
diff --git a/matlab/mode_check.m b/matlab/mode_check.m
index 5a9970981d..ada266663a 100644
--- a/matlab/mode_check.m
+++ b/matlab/mode_check.m
@@ -104,15 +104,6 @@ for plt = 1:nbplt
subplot(nr,nc,k)
kk = (plt-1)*nstar+k;
[name,texname] = get_the_name(kk,TeX,Model,EstimatedParameters,DynareOptions);
- if TeX
- if isempty(NAMES)
- NAMES = name;
- TeXNAMES = texname;
- else
- NAMES = char(NAMES,name);
- TeXNAMES = char(TeXNAMES,texname);
- end
- end
xx = x;
if x(kk)~=0 || ~isinf(BoundsInfo.lb(kk)) || ~isinf(BoundsInfo.lb(kk))
l1 = max(BoundsInfo.lb(kk),(1-sign(x(kk))*ll)*x(kk)); m1 = 0; %lower bound
@@ -182,7 +173,12 @@ for plt = 1:nbplt
zNaN = z(NaN_index);
yNaN = yl(1)*ones(size(NaN_index));
plot(zNaN,yNaN,'o','MarkerEdgeColor','r','MarkerFaceColor','r','MarkerSize',6);
- title(name,'interpreter','none')
+ if TeX
+ title(texname,'interpreter','latex')
+ else
+ title(name,'interpreter','none')
+ end
+
axis tight
if binding_lower_bound || binding_upper_bound
xl=get(gca,'xlim');
@@ -209,9 +205,6 @@ for plt = 1:nbplt
if TeX && any(strcmp('eps',cellstr(DynareOptions.graph_format)))
% TeX eps loader file
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:min(nstar,length(x)-(plt-1)*nstar)
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TeXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_CheckPlots%s}\n',DynareOptions.figures.textwidth*min(k/nc,1),[Model.fname, '/graphs/',Model.fname],int2str(plt));
fprintf(fidTeX,'\\caption{Check plots.}');
diff --git a/matlab/plot_priors.m b/matlab/plot_priors.m
index cbe288d2ca..02d7826688 100644
--- a/matlab/plot_priors.m
+++ b/matlab/plot_priors.m
@@ -57,28 +57,20 @@ for plt = 1:nbplt
i = (plt-1)*nstar + index;
[x,f,abscissa,dens,binf,bsup] = draw_prior_density(i,bayestopt_);
[nam,texnam] = get_the_name(i,TeX,M_,estim_params_,options_);
- if TeX
- if index==1
- TeXNAMES = texnam;
- NAMES = nam;
- else
- TeXNAMES = char(TeXNAMES,texnam);
- NAMES = char(NAMES,nam);
- end
- end
subplot(nr,nc,index)
hh = plot(x,f,'-k','linewidth',2);
set(hh,'color',[0.7 0.7 0.7]);
box on
- title(nam,'Interpreter','none')
+ if TeX
+ title(texnam,'Interpreter','latex')
+ else
+ title(nam,'Interpreter','none')
+ end
drawnow
end
dyn_saveas(hplt,[M_.fname, '/graphs/' M_.fname '_Priors' int2str(plt)],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:nstar0
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{%s}\n',deblank(NAMES(jj,:)),deblank(TeXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering\n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_Priors%s}\n',options_.figures.textwidth*min(index/nc,1),[M_.fname, '/graphs/' M_.fname],int2str(plt));
fprintf(fidTeX,'\\caption{Priors.}');
diff --git a/matlab/pm3.m b/matlab/pm3.m
index f32468b40e..3d93b04c1b 100644
--- a/matlab/pm3.m
+++ b/matlab/pm3.m
@@ -307,6 +307,9 @@ if ~options_.nograph && ~options_.no_graph.posterior
localVars.n2=n2;
localVars.Distrib=Distrib;
localVars.varlist=varlist;
+ if options_.TeX
+ localVars.varlist_TeX=varlist_TeX;
+ end
localVars.MaxNumberOfPlotsPerFigure=MaxNumberOfPlotsPerFigure;
localVars.name3=name3;
localVars.tit3=tit3;
@@ -352,28 +355,14 @@ if ~options_.nograph && ~options_.no_graph.posterior
i=0;
for j=1:length(nvar0)
- NAMES = [];
- TEXNAMES = [];
nvar=nvar0(j);
while i<nvar
i=i+1;
if max(abs(Mean(:,i))) > 10^(-6)
subplotnum = subplotnum+1;
- name = varlist{i};
- texname = varlist_TeX{i};
- if subplotnum==1
- NAMES = name;
- TEXNAMES = ['$' texname '$'];
- else
- NAMES = char(NAMES,name);
- TEXNAMES = char(TEXNAMES,['$' texname '$']);
- end
end
if subplotnum == MaxNumberOfPlotsPerFigure || i == nvar
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for jj = 1:size(TEXNAMES,1)
- fprintf(fidTeX,['\\psfrag{%s}[1][][0.5][0]{%s}\n'],deblank(NAMES(jj,:)),deblank(TEXNAMES(jj,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,['\\includegraphics[width=%2.2f\\textwidth]{%s/Output/%s_' name3 '_%s}\n'],options_.figures.textwidth*min(subplotnum/nn,1),M_.dname,M_.fname, tit3{i});
fprintf(fidTeX,'\\label{Fig:%s:%s}\n',name3,tit3{i});
@@ -381,8 +370,6 @@ if ~options_.nograph && ~options_.no_graph.posterior
fprintf(fidTeX,'\\end{figure}\n');
fprintf(fidTeX,' \n');
subplotnum = 0;
- NAMES = [];
- TEXNAMES = [];
end
end
end
diff --git a/matlab/pm3_core.m b/matlab/pm3_core.m
index b759509376..a820f6ad45 100644
--- a/matlab/pm3_core.m
+++ b/matlab/pm3_core.m
@@ -42,6 +42,7 @@ nn=myinputs.nn;
n2=myinputs.n2;
Distrib=myinputs.Distrib;
varlist=myinputs.varlist;
+
MaxNumberOfPlotsPerFigure=myinputs.MaxNumberOfPlotsPerFigure;
name3=myinputs.name3;
tit3=myinputs.tit3;
@@ -54,6 +55,9 @@ end
global options_ M_ oo_
+if options_.TeX
+ varlist_TeX=myinputs.varlist_TeX;
+end
if whoiam
prct0={0,whoiam,Parallel(ThisMatlab)};
@@ -89,8 +93,11 @@ for i=fpar:nvar
plot(1:n2,Mean(:,i),'-k','linewidth',1);
xlim([1 n2]);
hold off;
- name = deblank(varlist(i,:));
- title(name,'Interpreter','none')
+ if options_.TeX
+ title(['$' varlist_TeX{i,:} '$'],'Interpreter','latex')
+ else
+ title(varlist(i,:),'Interpreter','none')
+ end
yticklabels=get(gca,'yticklabel');
if size(char(yticklabels),2)>5 %make sure yticks do not screw up figure
yticks=get(gca,'ytick');
diff --git a/matlab/prior_posterior_statistics.m b/matlab/prior_posterior_statistics.m
index 3a638882d5..c52dd77010 100644
--- a/matlab/prior_posterior_statistics.m
+++ b/matlab/prior_posterior_statistics.m
@@ -354,7 +354,7 @@ if options_.smoother
if nvn
for obs_iter=1:length(options_.varobs)
meas_error_names{obs_iter,1}=['SE_EOBS_' M_.endo_names{strmatch(options_.varobs{obs_iter},M_.endo_names,'exact')}];
- texnames{obs_iter,1}=['SE_EOBS_' M_.endo_names_tex{strmatch(options_.varobs{obs_iter},M_.endo_names,'exact')}];
+ texnames{obs_iter,1}=['\sigma^{ME}_' M_.endo_names_tex{strmatch(options_.varobs{obs_iter},M_.endo_names,'exact')}];
end
pm3(meas_err_nbr,gend,ifil(3),B,'Smoothed measurement errors',...
'',meas_error_names,texnames,meas_error_names,...
diff --git a/matlab/rplot.m b/matlab/rplot.m
index 76a606d1a7..0f49ca29a3 100644
--- a/matlab/rplot.m
+++ b/matlab/rplot.m
@@ -54,9 +54,11 @@ for k = 1:length(s1)
error ('rplot: One of the variables specified does not exist') ;
else
y = [y; oo_.exo_simul(:, strcmp(s1{k}, M_.exo_names))'] ;
+ s1_TeX(k,1)=M_.exo_names_tex(strcmp(s1{k}, M_.exo_names));
end
else
y = [y; oo_.endo_simul(strcmp(s1{k}, M_.endo_names), :)];
+ s1_TeX(k,1)=M_.endo_names_tex(strcmp(s1{k}, M_.endo_names));
end
end
@@ -75,15 +77,21 @@ end
if options_.rplottype == 0
hh=dyn_figure(options_.nodisplay,'Name', 'Simulated Trajectory');
plot(ix(i),y(:,i)) ;
- title (['Plot of ' strjoin(s1, ' ')],'Interpreter','none') ;
+ if options_.TeX
+ title (['Plot of $' strjoin(s1_TeX, '~') '$'],'Interpreter','latex') ;
+ else
+ title (['Plot of ' strjoin(s1, ' ')],'Interpreter','none') ;
+ end
xlabel('Periods') ;
xlim([min(ix(i)) max(ix(i))])
if length(s1) > 1
- if isoctave
- legend(s1);
+ if options_.TeX
+ for k = 1:length(s1)
+ s1_TeX(k,1)={['$' s1_TeX{k,1} '$']};
+ end
+ legend(s1_TeX,'interpreter','latex');
else
- h = legend(s1);
- set(h, 'Interpreter', 'none');
+ legend(s1,'interpreter','none');
end
end
dyn_saveas(hh,[M_.fname, filesep, 'graphs', filesep, 'SimulatedTrajectory_' s1{1}],options_.nodisplay,options_.graph_format)
@@ -95,7 +103,11 @@ elseif options_.rplottype == 1
hh=dyn_figure(options_.nodisplay,'Name', 'Simulated Trajectory');
plot(ix(i),y(j,i)) ;
xlim([min(ix(i)) max(ix(i))])
- title(['Plot of ' s1{j}],'Interpreter','none') ;
+ if options_.TeX
+ title(['Plot of $' s1_TeX{j} '$'],'Interpreter','latex') ;
+ else
+ title(['Plot of ' s1{j}],'Interpreter','none') ;
+ end
xlabel('Periods') ;
dyn_saveas(hh,[M_.fname, filesep, 'graphs', filesep, 'SimulatedTrajectory_' s1{j}],options_.nodisplay,options_.graph_format)
if options_.TeX && any(strcmp('eps',cellstr(options_.graph_format)))
@@ -116,8 +128,13 @@ elseif options_.rplottype == 2
plot(ix(i),oo_.exo_steady_state(strcmp(s1{j}, M_.exo_names))*ones(1,size(i,1)),'r:') ;
end
xlabel('Periods') ;
- ylabel([s1{j}],'Interpreter','none') ;
- title(['Plot of ' s1{j}],'Interpreter','none') ;
+ if options_.TeX
+ ylabel([s1_TeX{j}],'Interpreter','latex') ;
+ title(['Plot of $' s1_TeX{j} '$'],'Interpreter','latex') ;
+ else
+ ylabel([s1{j}],'Interpreter','none') ;
+ title(['Plot of ' s1{j}],'Interpreter','none') ;
+ end
axis tight;
end
dyn_saveas(hh,[M_.fname, filesep, 'graphs', filesep, 'SimulatedTrajectory_' s1{1}],options_.nodisplay,options_.graph_format)
diff --git a/matlab/stoch_simul.m b/matlab/stoch_simul.m
index 3418770fd5..ac0908de6b 100644
--- a/matlab/stoch_simul.m
+++ b/matlab/stoch_simul.m
@@ -292,14 +292,15 @@ if options_.irf
hold off
xlim([1 options_.irf]);
remove_fractional_xticks;
- title(deblank(mylist(j,:)),'Interpreter','none');
+ if TeX
+ title(['$' deblank(mylistTeX(j,:)) '$'],'Interpreter','latex');
+ else
+ title(deblank(mylist(j,:)),'Interpreter','none');
+ end
end
dyn_saveas(hh,[M_.fname, '/graphs/' M_.fname '_IRF_' tit{i}],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for j = 1:number_of_plots_to_draw
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{$%s$}\n',deblank(mylist(j,:)),deblank(mylistTeX(j,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_IRF_%s}\n',options_.figures.textwidth*min(j/nc,1),[M_.fname, '/graphs/' M_.fname],tit{i});
fprintf(fidTeX,'\\caption{Impulse response functions (orthogonalized shock to $%s$).}\n',titTeX{i});
@@ -324,14 +325,15 @@ if options_.irf
hold off
xlim([1 options_.irf]);
remove_fractional_xticks
- title(deblank(mylist((fig-1)*nstar+plt,:)),'Interpreter','none');
+ if TeX
+ title(['$' deblank(mylistTeX((fig-1)*nstar+plt,:)) '$'],'Interpreter','latex');
+ else
+ title(deblank(mylist((fig-1)*nstar+plt,:)),'Interpreter','none');
+ end
end
dyn_saveas(hh,[M_.fname, '/graphs/' M_.fname '_IRF_' tit{i} int2str(fig)],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for j = 1:nstar
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{$%s$}\n',deblank(mylist((fig-1)*nstar+j,:)),deblank(mylistTeX((fig-1)*nstar+j,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_IRF_%s%s}\n',options_.figures.textwidth*min(plt/nc,1),[M_.fname, '/graphs/' M_.fname],tit{i},int2str(fig));
if options_.relative_irf
@@ -355,14 +357,15 @@ if options_.irf
hold off
xlim([1 options_.irf]);
remove_fractional_xticks
- title(deblank(mylist((nbplt-1)*nstar+plt,:)),'Interpreter','none');
+ if TeX
+ title(['$' deblank(mylistTeX((nbplt-1)*nstar+plt,:)) '$'],'Interpreter','latex');
+ else
+ title(deblank(mylist((nbplt-1)*nstar+plt,:)),'Interpreter','none');
+ end
end
dyn_saveas(hh,[M_.fname, '/graphs/' M_.fname '_IRF_' tit{i} int2str(nbplt) ],options_.nodisplay,options_.graph_format);
if TeX && any(strcmp('eps',cellstr(options_.graph_format)))
fprintf(fidTeX,'\\begin{figure}[H]\n');
- for j = 1:m
- fprintf(fidTeX,'\\psfrag{%s}[1][][0.5][0]{$%s$}\n',deblank(mylist((nbplt-1)*nstar+j,:)),deblank(mylistTeX((nbplt-1)*nstar+j,:)));
- end
fprintf(fidTeX,'\\centering \n');
fprintf(fidTeX,'\\includegraphics[width=%2.2f\\textwidth]{%s_IRF_%s%s}\n',options_.figures.textwidth*min(m/lc,1),[M_.fname, '/graphs/' M_.fname],tit{i},int2str(nbplt));
if options_.relative_irf
--
GitLab