diff --git a/doc/dynare.texi b/doc/dynare.texi index b7766b430c8256bd58bd84e9ef57959352a4cc5d..7265b4aeeb0cac4dad8ce097a6f08b1ecec03ab2 100644 --- a/doc/dynare.texi +++ b/doc/dynare.texi @@ -11324,9 +11324,9 @@ the @ref{data} option. If empty, use all series provided to The date range showing the portion of the graph that should be shaded. Default: @code{none} -@item shadeColor, @code{`red'} | @code{`green'} | @code{`blue'} | @code{`cyan'} | @code{`magenta'} | @code{`yellow'} | @code{`black'} | @code{`gray'} | @code{`darkgray'} | @code{`lightgray'} | @code{`brown'} | @code{`lime'} | @code{`olive'} | @code{`orange'} | @code{`pink'} | @code{`purple'} | @code{`teal'} | @code{`violet'} | @code{`white'} -The color to use in the shaded portion of the graph. Default: -@code{`green'} +@anchor{shadeColor} +@item shadeColor, @code{STRING} +The color to use in the shaded portion of the graph. All valid color strings defined for use by @code{PGFPLOTS/Ti}@i{k}@code{Z} are valid. A list of defined colors is: @code{`red'}, @code{`green'}, @code{`blue'}, @code{`cyan'}, @code{`magenta'}, @code{`yellow'}, @code{`black'}, @code{`gray'}, @code{`white'}, @code{`darkgray'}, @code{`lightgray'}, @code{`brown'}, @code{`lime'}, @code{`olive'}, @code{`orange'}, @code{`pink'}, @code{`purple'}, @code{`teal'}, and @code{`violet'}. Furthermore, You can use combinations of these colors. For example, if you wanted a color that is @math{20\%} green and @math{80\%} purple, you could pass the string @code{`green!20!purple'}. You can also use RGB colors, following the syntax: @code{`rgb,255:red,231;green,84;blue,121'} which corresponds to the RGB color @code{(231;84;121)}. More examples are available in the section 4.7.5 of the @code{PGFPLOTS/Ti}@i{k}@code{Z} manual, revision 1.10. Default: @code{`green'} @item shadeOpacity, @code{DOUBLE} The opacity of the shaded area, must be in @math{[0,100]}. Default: @code{20} @@ -11406,9 +11406,10 @@ Whether or not to fill missing precision spots with zeros. Default: @code{true} @item showZeroline, @code{BOOLEAN} Display a solid black line at @math{y = 0}. Default: @code{false} -@item zeroLineColor, @code{`red'} | @code{`green'} | @code{`blue'} | @code{`cyan'} | @code{`magenta'} | @code{`yellow'} | @code{`black'} | @code{`gray'} | @code{`darkgray'} | @code{`lightgray'} | @code{`brown'} | @code{`lime'} | @code{`olive'} | @code{`orange'} | @code{`pink'} | @code{`purple'} | @code{`teal'} | @code{`violet'} | @code{`white'} +@item zeroLineColor, @code{STRING} The color to use for the zero line. Only used if @ref{showZeroLine} is -true. Default: @code{`black'} +true. See the explanation in @ref{shadeColor} for how to use colors with +reports. Default: @code{`black'} @end table @end defmethod @@ -11480,8 +11481,9 @@ Use this option to draw a horizontal line at the given value. Default: The name to display in the legend for this series. Will be displayed only if the @ref{data} option has been set. Default: the @code{tex} name of the series -@item graphLineColor, @code{`red'} | @code{`green'} | @code{`blue'} | @code{`cyan'} | @code{`magenta'} | @code{`yellow'} | @code{`black'} | @code{`gray'} | @code{`darkgray'} | @code{`lightgray'} | @code{`brown'} | @code{`lime'} | @code{`olive'} | @code{`orange'} | @code{`pink'} | @code{`purple'} | @code{`teal'} | @code{`violet'} | @code{`white'} -Color to use for the series in a graph. Default: @code{`black'} +@item graphLineColor, @code{STRING} +Color to use for the series in a graph. See the explanation in @ref{shadeColor} +for how to use colors with reports. Default: @code{`black'} @item graphLineStyle, @code{`none'} | @code{`solid'} | @code{`dotted'} | @code{`densely dotted'} | @code{`loosely dotted'} | @code{`dashed'} | @code{`densely dashed'} | @code{`loosely dashed'} | @code{`dashdotted'} | @code{`densely dashdotted'} | @code{`loosely dashdotted'} | @code{`dashdotdotted'} | @code{`densely dashdotdotted'} | @code{`loosely dashdotdotted'} Line style for this series in a graph. Default: @code{`solid'} @@ -11492,11 +11494,13 @@ Line width for this series in a graph. Default: @code{0.5} @item graphMarker, @code{`x'} | @code{`+'} | @code{`-'} | @code{`|'} | @code{`o'} | @code{`asterisk'} | @code{`star'} | @code{`10-pointed star'} | @code{`oplus'} | @code{`oplus*'} | @code{`otimes'} | @code{`otimes*'} | @code{`square'} | @code{`square*'} | @code{`triangle'} | @code{`triangle*'} | @code{`diamond'} | @code{`diamond*'} | @code{`halfdiamond*'} | @code{`halfsquare*'} | @code{`halfsquare right*'} | @code{`halfsquare left*'} | @code{`Mercedes star'} | @code{`Mercedes star flipped'} | @code{`halfcircle'} | @code{`halfcircle*'} | @code{`pentagon'} | @code{`pentagon star'} The Marker to use on this series in a graph. Default: @code{none} -@item graphMarkerEdgeColor, @code{`red'} | @code{`green'} | @code{`blue'} | @code{`cyan'} | @code{`magenta'} | @code{`yellow'} | @code{`black'} | @code{`gray'} | @code{`darkgray'} | @code{`lightgray'} | @code{`brown'} | @code{`lime'} | @code{`olive'} | @code{`orange'} | @code{`pink'} | @code{`purple'} | @code{`teal'} | @code{`violet'} | @code{`white'} -The edge color of the graph marker. Default: @code{graphLineColor} +@item graphMarkerEdgeColor, @code{STRING} +The edge color of the graph marker. See the explanation in @ref{shadeColor} for +how to use colors with reports. Default: @code{graphLineColor} -@item graphMarkerFaceColor, @code{`red'} | @code{`green'} | @code{`blue'} | @code{`cyan'} | @code{`magenta'} | @code{`yellow'} | @code{`black'} | @code{`gray'} | @code{`darkgray'} | @code{`lightgray'} | @code{`brown'} | @code{`lime'} | @code{`olive'} | @code{`orange'} | @code{`pink'} | @code{`purple'} | @code{`teal'} | @code{`violet'} | @code{`white'} -The face color of the graph marker. Default: @code{graphLineColor} +@item graphMarkerFaceColor, @code{STRING} +The face color of the graph marker. See the explanation in @ref{shadeColor} for +how to use colors with reports. Default: @code{graphLineColor} @item graphMarkerSize, @code{DOUBLE} The size of the graph marker. Default: @code{1} diff --git a/matlab/reports/@graph/graph.m b/matlab/reports/@graph/graph.m index 7285157f7e6bb23056ffa1cc464a1d51cff7fec5..62909163f62e3d5f7c5485ff7bfa8b9e2c414304 100644 --- a/matlab/reports/@graph/graph.m +++ b/matlab/reports/@graph/graph.m @@ -138,13 +138,9 @@ assert(ischar(o.xTickLabelAnchor), '@graph.graph: xTickLabelAnchor must be a str assert(isint(o.yTickLabelPrecision), '@graph.graph: o.yTickLabelPrecision must be an integer'); assert(islogical(o.yTickLabelFixed), '@graph.graph: yTickLabelFixed must be either true or false'); assert(islogical(o.yTickLabelZeroFill), '@graph.graph: yTickLabelZeroFill must be either true or false'); -valid_shadeColor = {'red', 'green', 'blue', 'cyan ', 'magenta', 'yellow', ... - 'black', 'gray', 'darkgray', 'lightgray', 'brown', ... - 'lime', 'olive', 'orange', 'pink', 'purple', 'teal', 'violet', 'white'}; -assert(any(strcmp(o.shadeColor, valid_shadeColor)), ['@graph.graph: shadeColor must be one of ' ... - strjoin(valid_shadeColor)]); -assert(any(strcmp(o.zeroLineColor, valid_shadeColor)), ... - ['@graph.graph: zeroLineColor must be one of ' strjoin(valid_shadeColor)]); + +assert(ischar(o.shadeColor), '@graph.graph: shadeColor must be a string'); +assert(ischar(o.zeroLineColor), '@graph.graph: zeroLineColor must be a string'); assert(any(strcmp(o.axisShape, {'box', 'L'})), ['@graph.graph: axisShape ' ... 'must be one of ''box'' or ''L''']); valid_legend_locations = ... diff --git a/matlab/reports/@report_series/writeSeriesForGraph.m b/matlab/reports/@report_series/writeSeriesForGraph.m index 8628dd30d0f8663a81a7f58c80b7b750ee2272bd..39192bb44823bbfb0863ba6e524853f8109c2bbd 100644 --- a/matlab/reports/@report_series/writeSeriesForGraph.m +++ b/matlab/reports/@report_series/writeSeriesForGraph.m @@ -40,11 +40,7 @@ assert(ischar(o.graphMiscTikzAddPlotOptions), ['@report_series.writeSeriesForGra assert(islogical(o.graphShowInLegend), '@graph.graph: graphShowInLegend must be either true or false'); % Line -valid_graphLineColor = {'red', 'green', 'blue', 'cyan ', 'magenta', 'yellow', ... - 'black', 'gray', 'darkgray', 'lightgray', 'brown', ... - 'lime', 'olive', 'orange', 'pink', 'purple', 'teal', 'violet', 'white'}; -assert(any(strcmp(o.graphLineColor, valid_graphLineColor)), ... - ['@report_series.writeSeriesForGraph: graphLineColor must be one of ' strjoin(valid_graphLineColor)]); +assert(ischar(o.graphLineColor), '@report_series.writeSeriesForGraph: graphLineColor must be a string'); assert(ischar(o.graphLineStyle), '@report_series.writeSeriesForGraph: graphLineStyle must be a string'); assert(isfloat(o.graphLineWidth) && o.graphLineWidth > 0, ... '@report_series.writeSeriesForGraph: graphLineWidth must be a positive number');