We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
plot_posterior writes auto instead of point estimate name
**Describe the bug**
`plot_posterior` should write the name of the point estimate, however it currently writes `auto` if `auto` is passed as point estimate. This can be seen in the [docs example](https://arviz-devs.github.io/arviz/examples/matplotlib/mpl_plot_posterior.html)

**Expected behavior**
It should write the name of the point estimate used (taken from rcParams).

**Additional context**
ArviZ master


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `arviz/plots/posteriorplot.py`
Content:
```
1 """Plot posterior densities."""
2 from typing import Optional
3 
4 from ..data import convert_to_dataset
5 from .plot_utils import (
6     xarray_var_iter,
7     _scale_fig_size,
8     default_grid,
9     get_coords,
10     filter_plotters_list,
11     get_plotting_function,
12 )
13 from ..utils import _var_names
14 from ..rcparams import rcParams
15 
16 
17 def plot_posterior(
18     data,
19     var_names=None,
20     coords=None,
21     figsize=None,
22     textsize=None,
23     credible_interval=None,
24     multimodal=False,
25     round_to: Optional[int] = None,
26     point_estimate="auto",
27     group="posterior",
28     rope=None,
29     ref_val=None,
30     kind="kde",
31     bw=4.5,
32     bins=None,
33     ax=None,
34     backend=None,
35     backend_kwargs=None,
36     show=None,
37     **kwargs
38 ):
39     """Plot Posterior densities in the style of John K. Kruschke's book.
40 
41     Parameters
42     ----------
43     data : obj
44         Any object that can be converted to an az.InferenceData object
45         Refer to documentation of az.convert_to_dataset for details
46     var_names : list of variable names
47         Variables to be plotted, two variables are required.
48     coords : mapping, optional
49         Coordinates of var_names to be plotted. Passed to `Dataset.sel`
50     figsize : tuple
51         Figure size. If None it will be defined automatically.
52     textsize: float
53         Text size scaling factor for labels, titles and lines. If None it will be autoscaled based
54         on figsize.
55     credible_interval : float, optional
56         Credible intervals. Defaults to 0.94. Use None to hide the credible interval
57     multimodal : bool
58         If true (default) it may compute more than one credible interval if the distribution is
59         multimodal and the modes are well separated.
60     round_to : int, optional
61         Controls formatting of floats. Defaults to 2 or the integer part, whichever is bigger.
62     point_estimate : Optional[str]
63         Plot point estimate per variable. Values should be 'mean', 'median', 'mode' or None.
64         Defaults to 'auto' i.e. it falls back to default set in rcParams.
65     group : str, optional
66         Specifies which InferenceData group should be plotted. Defaults to ‘posterior’.
67     rope: tuple or dictionary of tuples
68         Lower and upper values of the Region Of Practical Equivalence. If a list is provided, its
69         length should match the number of variables.
70     ref_val: float or dictionary of floats
71         display the percentage below and above the values in ref_val. Must be None (default),
72         a constant, a list or a dictionary like see an example below. If a list is provided, its
73         length should match the number of variables.
74     kind: str
75         Type of plot to display (kde or hist) For discrete variables this argument is ignored and
76         a histogram is always used.
77     bw : float
78         Bandwidth scaling factor for the KDE. Should be larger than 0. The higher this number the
79         smoother the KDE will be. Defaults to 4.5 which is essentially the same as the Scott's rule
80         of thumb (the default rule used by SciPy). Only works if `kind == kde`.
81     bins : integer or sequence or 'auto', optional
82         Controls the number of bins, accepts the same keywords `matplotlib.hist()` does. Only works
83         if `kind == hist`. If None (default) it will use `auto` for continuous variables and
84         `range(xmin, xmax + 1)` for discrete variables.
85     ax: axes, optional
86         Matplotlib axes or bokeh figures.
87     backend: str, optional
88         Select plotting backend {"matplotlib","bokeh"}. Default "matplotlib".
89     backend_kwargs: bool, optional
90         These are kwargs specific to the backend being used. For additional documentation
91         check the plotting method of the backend.
92     show : bool, optional
93         Call backend show function.
94     **kwargs
95         Passed as-is to plt.hist() or plt.plot() function depending on the value of `kind`.
96 
97     Returns
98     -------
99     axes : matplotlib axes or bokeh figures
100 
101     Examples
102     --------
103     Show a default kernel density plot following style of John Kruschke
104 
105     .. plot::
106         :context: close-figs
107 
108         >>> import arviz as az
109         >>> data = az.load_arviz_data('centered_eight')
110         >>> az.plot_posterior(data)
111 
112     Plot subset variables by specifying variable name exactly
113 
114     .. plot::
115         :context: close-figs
116 
117         >>> az.plot_posterior(data, var_names=['mu'])
118 
119     Plot Region of Practical Equivalence (rope) for all distributions
120 
121     .. plot::
122         :context: close-figs
123 
124         >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=(-1, 1))
125 
126     Plot Region of Practical Equivalence for selected distributions
127 
128     .. plot::
129         :context: close-figs
130 
131         >>> rope = {'mu': [{'rope': (-2, 2)}], 'theta': [{'school': 'Choate', 'rope': (2, 4)}]}
132         >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=rope)
133 
134 
135     Add reference lines
136 
137     .. plot::
138         :context: close-figs
139 
140         >>> az.plot_posterior(data, var_names=['mu', 'theta'], ref_val=0)
141 
142     Show point estimate of distribution
143 
144     .. plot::
145         :context: close-figs
146 
147         >>> az.plot_posterior(data, var_names=['mu', 'theta'], point_estimate='mode')
148 
149     Show reference values using variable names and coordinates
150 
151     .. plot::
152         :context: close-figs
153 
154         >>> az.plot_posterior(data, ref_val= {"theta": [{"school": "Deerfield", "ref_val": 4},
155         ...                                             {"school": "Choate", "ref_val": 3}]})
156 
157     Show reference values using a list
158 
159     .. plot::
160         :context: close-figs
161 
162         >>> az.plot_posterior(data, ref_val=[1] + [5] * 8 + [1])
163 
164 
165     Plot posterior as a histogram
166 
167     .. plot::
168         :context: close-figs
169 
170         >>> az.plot_posterior(data, var_names=['mu'], kind='hist')
171 
172     Change size of credible interval
173 
174     .. plot::
175         :context: close-figs
176 
177         >>> az.plot_posterior(data, var_names=['mu'], credible_interval=.75)
178     """
179     data = convert_to_dataset(data, group=group)
180     var_names = _var_names(var_names, data)
181 
182     if coords is None:
183         coords = {}
184 
185     if credible_interval is None:
186         credible_interval = rcParams["stats.credible_interval"]
187     else:
188         if not 1 >= credible_interval > 0:
189             raise ValueError("The value of credible_interval should be in the interval (0, 1]")
190 
191     plotters = filter_plotters_list(
192         list(xarray_var_iter(get_coords(data, coords), var_names=var_names, combined=True)),
193         "plot_posterior",
194     )
195     length_plotters = len(plotters)
196     rows, cols = default_grid(length_plotters)
197 
198     (figsize, ax_labelsize, titlesize, xt_labelsize, _linewidth, _) = _scale_fig_size(
199         figsize, textsize, rows, cols
200     )
201     kwargs.setdefault("linewidth", _linewidth)
202 
203     posteriorplot_kwargs = dict(
204         ax=ax,
205         length_plotters=length_plotters,
206         rows=rows,
207         cols=cols,
208         figsize=figsize,
209         plotters=plotters,
210         bw=bw,
211         bins=bins,
212         kind=kind,
213         point_estimate=point_estimate,
214         round_to=round_to,
215         credible_interval=credible_interval,
216         multimodal=multimodal,
217         ref_val=ref_val,
218         rope=rope,
219         ax_labelsize=ax_labelsize,
220         xt_labelsize=xt_labelsize,
221         kwargs=kwargs,
222         titlesize=titlesize,
223         backend_kwargs=backend_kwargs,
224         show=show,
225     )
226 
227     if backend == "bokeh":
228 
229         posteriorplot_kwargs.pop("xt_labelsize")
230         posteriorplot_kwargs.pop("titlesize")
231 
232     # TODO: Add backend kwargs
233     plot = get_plotting_function("plot_posterior", "posteriorplot", backend)
234     ax = plot(**posteriorplot_kwargs)
235     return ax
236
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/arviz/plots/posteriorplot.py b/arviz/plots/posteriorplot.py
--- a/arviz/plots/posteriorplot.py
+++ b/arviz/plots/posteriorplot.py
@@ -188,6 +188,11 @@
         if not 1 >= credible_interval > 0:
             raise ValueError("The value of credible_interval should be in the interval (0, 1]")
 
+    if point_estimate == "auto":
+        point_estimate = rcParams["plot.point_estimate"]
+    elif point_estimate not in {"mean", "median", "mode", None}:
+        raise ValueError("The value of point_estimate must be either mean, median, mode or None.")
+
     plotters = filter_plotters_list(
         list(xarray_var_iter(get_coords(data, coords), var_names=var_names, combined=True)),
         "plot_posterior",

{"golden_diff": "diff --git a/arviz/plots/posteriorplot.py b/arviz/plots/posteriorplot.py\n--- a/arviz/plots/posteriorplot.py\n+++ b/arviz/plots/posteriorplot.py\n@@ -188,6 +188,11 @@\n         if not 1 >= credible_interval > 0:\n             raise ValueError(\"The value of credible_interval should be in the interval (0, 1]\")\n \n+    if point_estimate == \"auto\":\n+        point_estimate = rcParams[\"plot.point_estimate\"]\n+    elif point_estimate not in {\"mean\", \"median\", \"mode\", None}:\n+        raise ValueError(\"The value of point_estimate must be either mean, median, mode or None.\")\n+\n     plotters = filter_plotters_list(\n         list(xarray_var_iter(get_coords(data, coords), var_names=var_names, combined=True)),\n         \"plot_posterior\",\n", "issue": "plot_posterior writes auto instead of point estimate name\n**Describe the bug**\r\n`plot_posterior` should write the name of the point estimate, however it currently writes `auto` if `auto` is passed as point estimate. This can be seen in the [docs example](https://arviz-devs.github.io/arviz/examples/matplotlib/mpl_plot_posterior.html)\r\n\r\n**Expected behavior**\r\nIt should write the name of the point estimate used (taken from rcParams).\r\n\r\n**Additional context**\r\nArviZ master\r\n\n", "before_files": [{"content": "\"\"\"Plot posterior densities.\"\"\"\nfrom typing import Optional\n\nfrom ..data import convert_to_dataset\nfrom .plot_utils import (\n    xarray_var_iter,\n    _scale_fig_size,\n    default_grid,\n    get_coords,\n    filter_plotters_list,\n    get_plotting_function,\n)\nfrom ..utils import _var_names\nfrom ..rcparams import rcParams\n\n\ndef plot_posterior(\n    data,\n    var_names=None,\n    coords=None,\n    figsize=None,\n    textsize=None,\n    credible_interval=None,\n    multimodal=False,\n    round_to: Optional[int] = None,\n    point_estimate=\"auto\",\n    group=\"posterior\",\n    rope=None,\n    ref_val=None,\n    kind=\"kde\",\n    bw=4.5,\n    bins=None,\n    ax=None,\n    backend=None,\n    backend_kwargs=None,\n    show=None,\n    **kwargs\n):\n    \"\"\"Plot Posterior densities in the style of John K. Kruschke's book.\n\n    Parameters\n    ----------\n    data : obj\n        Any object that can be converted to an az.InferenceData object\n        Refer to documentation of az.convert_to_dataset for details\n    var_names : list of variable names\n        Variables to be plotted, two variables are required.\n    coords : mapping, optional\n        Coordinates of var_names to be plotted. Passed to `Dataset.sel`\n    figsize : tuple\n        Figure size. If None it will be defined automatically.\n    textsize: float\n        Text size scaling factor for labels, titles and lines. If None it will be autoscaled based\n        on figsize.\n    credible_interval : float, optional\n        Credible intervals. Defaults to 0.94. Use None to hide the credible interval\n    multimodal : bool\n        If true (default) it may compute more than one credible interval if the distribution is\n        multimodal and the modes are well separated.\n    round_to : int, optional\n        Controls formatting of floats. Defaults to 2 or the integer part, whichever is bigger.\n    point_estimate : Optional[str]\n        Plot point estimate per variable. Values should be 'mean', 'median', 'mode' or None.\n        Defaults to 'auto' i.e. it falls back to default set in rcParams.\n    group : str, optional\n        Specifies which InferenceData group should be plotted. Defaults to \u2018posterior\u2019.\n    rope: tuple or dictionary of tuples\n        Lower and upper values of the Region Of Practical Equivalence. If a list is provided, its\n        length should match the number of variables.\n    ref_val: float or dictionary of floats\n        display the percentage below and above the values in ref_val. Must be None (default),\n        a constant, a list or a dictionary like see an example below. If a list is provided, its\n        length should match the number of variables.\n    kind: str\n        Type of plot to display (kde or hist) For discrete variables this argument is ignored and\n        a histogram is always used.\n    bw : float\n        Bandwidth scaling factor for the KDE. Should be larger than 0. The higher this number the\n        smoother the KDE will be. Defaults to 4.5 which is essentially the same as the Scott's rule\n        of thumb (the default rule used by SciPy). Only works if `kind == kde`.\n    bins : integer or sequence or 'auto', optional\n        Controls the number of bins, accepts the same keywords `matplotlib.hist()` does. Only works\n        if `kind == hist`. If None (default) it will use `auto` for continuous variables and\n        `range(xmin, xmax + 1)` for discrete variables.\n    ax: axes, optional\n        Matplotlib axes or bokeh figures.\n    backend: str, optional\n        Select plotting backend {\"matplotlib\",\"bokeh\"}. Default \"matplotlib\".\n    backend_kwargs: bool, optional\n        These are kwargs specific to the backend being used. For additional documentation\n        check the plotting method of the backend.\n    show : bool, optional\n        Call backend show function.\n    **kwargs\n        Passed as-is to plt.hist() or plt.plot() function depending on the value of `kind`.\n\n    Returns\n    -------\n    axes : matplotlib axes or bokeh figures\n\n    Examples\n    --------\n    Show a default kernel density plot following style of John Kruschke\n\n    .. plot::\n        :context: close-figs\n\n        >>> import arviz as az\n        >>> data = az.load_arviz_data('centered_eight')\n        >>> az.plot_posterior(data)\n\n    Plot subset variables by specifying variable name exactly\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'])\n\n    Plot Region of Practical Equivalence (rope) for all distributions\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=(-1, 1))\n\n    Plot Region of Practical Equivalence for selected distributions\n\n    .. plot::\n        :context: close-figs\n\n        >>> rope = {'mu': [{'rope': (-2, 2)}], 'theta': [{'school': 'Choate', 'rope': (2, 4)}]}\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=rope)\n\n\n    Add reference lines\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], ref_val=0)\n\n    Show point estimate of distribution\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], point_estimate='mode')\n\n    Show reference values using variable names and coordinates\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, ref_val= {\"theta\": [{\"school\": \"Deerfield\", \"ref_val\": 4},\n        ...                                             {\"school\": \"Choate\", \"ref_val\": 3}]})\n\n    Show reference values using a list\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, ref_val=[1] + [5] * 8 + [1])\n\n\n    Plot posterior as a histogram\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'], kind='hist')\n\n    Change size of credible interval\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'], credible_interval=.75)\n    \"\"\"\n    data = convert_to_dataset(data, group=group)\n    var_names = _var_names(var_names, data)\n\n    if coords is None:\n        coords = {}\n\n    if credible_interval is None:\n        credible_interval = rcParams[\"stats.credible_interval\"]\n    else:\n        if not 1 >= credible_interval > 0:\n            raise ValueError(\"The value of credible_interval should be in the interval (0, 1]\")\n\n    plotters = filter_plotters_list(\n        list(xarray_var_iter(get_coords(data, coords), var_names=var_names, combined=True)),\n        \"plot_posterior\",\n    )\n    length_plotters = len(plotters)\n    rows, cols = default_grid(length_plotters)\n\n    (figsize, ax_labelsize, titlesize, xt_labelsize, _linewidth, _) = _scale_fig_size(\n        figsize, textsize, rows, cols\n    )\n    kwargs.setdefault(\"linewidth\", _linewidth)\n\n    posteriorplot_kwargs = dict(\n        ax=ax,\n        length_plotters=length_plotters,\n        rows=rows,\n        cols=cols,\n        figsize=figsize,\n        plotters=plotters,\n        bw=bw,\n        bins=bins,\n        kind=kind,\n        point_estimate=point_estimate,\n        round_to=round_to,\n        credible_interval=credible_interval,\n        multimodal=multimodal,\n        ref_val=ref_val,\n        rope=rope,\n        ax_labelsize=ax_labelsize,\n        xt_labelsize=xt_labelsize,\n        kwargs=kwargs,\n        titlesize=titlesize,\n        backend_kwargs=backend_kwargs,\n        show=show,\n    )\n\n    if backend == \"bokeh\":\n\n        posteriorplot_kwargs.pop(\"xt_labelsize\")\n        posteriorplot_kwargs.pop(\"titlesize\")\n\n    # TODO: Add backend kwargs\n    plot = get_plotting_function(\"plot_posterior\", \"posteriorplot\", backend)\n    ax = plot(**posteriorplot_kwargs)\n    return ax\n", "path": "arviz/plots/posteriorplot.py"}], "after_files": [{"content": "\"\"\"Plot posterior densities.\"\"\"\nfrom typing import Optional\n\nfrom ..data import convert_to_dataset\nfrom .plot_utils import (\n    xarray_var_iter,\n    _scale_fig_size,\n    default_grid,\n    get_coords,\n    filter_plotters_list,\n    get_plotting_function,\n)\nfrom ..utils import _var_names\nfrom ..rcparams import rcParams\n\n\ndef plot_posterior(\n    data,\n    var_names=None,\n    coords=None,\n    figsize=None,\n    textsize=None,\n    credible_interval=None,\n    multimodal=False,\n    round_to: Optional[int] = None,\n    point_estimate=\"auto\",\n    group=\"posterior\",\n    rope=None,\n    ref_val=None,\n    kind=\"kde\",\n    bw=4.5,\n    bins=None,\n    ax=None,\n    backend=None,\n    backend_kwargs=None,\n    show=None,\n    **kwargs\n):\n    \"\"\"Plot Posterior densities in the style of John K. Kruschke's book.\n\n    Parameters\n    ----------\n    data : obj\n        Any object that can be converted to an az.InferenceData object\n        Refer to documentation of az.convert_to_dataset for details\n    var_names : list of variable names\n        Variables to be plotted, two variables are required.\n    coords : mapping, optional\n        Coordinates of var_names to be plotted. Passed to `Dataset.sel`\n    figsize : tuple\n        Figure size. If None it will be defined automatically.\n    textsize: float\n        Text size scaling factor for labels, titles and lines. If None it will be autoscaled based\n        on figsize.\n    credible_interval : float, optional\n        Credible intervals. Defaults to 0.94. Use None to hide the credible interval\n    multimodal : bool\n        If true (default) it may compute more than one credible interval if the distribution is\n        multimodal and the modes are well separated.\n    round_to : int, optional\n        Controls formatting of floats. Defaults to 2 or the integer part, whichever is bigger.\n    point_estimate : Optional[str]\n        Plot point estimate per variable. Values should be 'mean', 'median', 'mode' or None.\n        Defaults to 'auto' i.e. it falls back to default set in rcParams.\n    group : str, optional\n        Specifies which InferenceData group should be plotted. Defaults to \u2018posterior\u2019.\n    rope: tuple or dictionary of tuples\n        Lower and upper values of the Region Of Practical Equivalence. If a list is provided, its\n        length should match the number of variables.\n    ref_val: float or dictionary of floats\n        display the percentage below and above the values in ref_val. Must be None (default),\n        a constant, a list or a dictionary like see an example below. If a list is provided, its\n        length should match the number of variables.\n    kind: str\n        Type of plot to display (kde or hist) For discrete variables this argument is ignored and\n        a histogram is always used.\n    bw : float\n        Bandwidth scaling factor for the KDE. Should be larger than 0. The higher this number the\n        smoother the KDE will be. Defaults to 4.5 which is essentially the same as the Scott's rule\n        of thumb (the default rule used by SciPy). Only works if `kind == kde`.\n    bins : integer or sequence or 'auto', optional\n        Controls the number of bins, accepts the same keywords `matplotlib.hist()` does. Only works\n        if `kind == hist`. If None (default) it will use `auto` for continuous variables and\n        `range(xmin, xmax + 1)` for discrete variables.\n    ax: axes, optional\n        Matplotlib axes or bokeh figures.\n    backend: str, optional\n        Select plotting backend {\"matplotlib\",\"bokeh\"}. Default \"matplotlib\".\n    backend_kwargs: bool, optional\n        These are kwargs specific to the backend being used. For additional documentation\n        check the plotting method of the backend.\n    show : bool, optional\n        Call backend show function.\n    **kwargs\n        Passed as-is to plt.hist() or plt.plot() function depending on the value of `kind`.\n\n    Returns\n    -------\n    axes : matplotlib axes or bokeh figures\n\n    Examples\n    --------\n    Show a default kernel density plot following style of John Kruschke\n\n    .. plot::\n        :context: close-figs\n\n        >>> import arviz as az\n        >>> data = az.load_arviz_data('centered_eight')\n        >>> az.plot_posterior(data)\n\n    Plot subset variables by specifying variable name exactly\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'])\n\n    Plot Region of Practical Equivalence (rope) for all distributions\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=(-1, 1))\n\n    Plot Region of Practical Equivalence for selected distributions\n\n    .. plot::\n        :context: close-figs\n\n        >>> rope = {'mu': [{'rope': (-2, 2)}], 'theta': [{'school': 'Choate', 'rope': (2, 4)}]}\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], rope=rope)\n\n\n    Add reference lines\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], ref_val=0)\n\n    Show point estimate of distribution\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu', 'theta'], point_estimate='mode')\n\n    Show reference values using variable names and coordinates\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, ref_val= {\"theta\": [{\"school\": \"Deerfield\", \"ref_val\": 4},\n        ...                                             {\"school\": \"Choate\", \"ref_val\": 3}]})\n\n    Show reference values using a list\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, ref_val=[1] + [5] * 8 + [1])\n\n\n    Plot posterior as a histogram\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'], kind='hist')\n\n    Change size of credible interval\n\n    .. plot::\n        :context: close-figs\n\n        >>> az.plot_posterior(data, var_names=['mu'], credible_interval=.75)\n    \"\"\"\n    data = convert_to_dataset(data, group=group)\n    var_names = _var_names(var_names, data)\n\n    if coords is None:\n        coords = {}\n\n    if credible_interval is None:\n        credible_interval = rcParams[\"stats.credible_interval\"]\n    else:\n        if not 1 >= credible_interval > 0:\n            raise ValueError(\"The value of credible_interval should be in the interval (0, 1]\")\n\n    if point_estimate == \"auto\":\n        point_estimate = rcParams[\"plot.point_estimate\"]\n    elif point_estimate not in {\"mean\", \"median\", \"mode\", None}:\n        raise ValueError(\"The value of point_estimate must be either mean, median, mode or None.\")\n\n    plotters = filter_plotters_list(\n        list(xarray_var_iter(get_coords(data, coords), var_names=var_names, combined=True)),\n        \"plot_posterior\",\n    )\n    length_plotters = len(plotters)\n    rows, cols = default_grid(length_plotters)\n\n    (figsize, ax_labelsize, titlesize, xt_labelsize, _linewidth, _) = _scale_fig_size(\n        figsize, textsize, rows, cols\n    )\n    kwargs.setdefault(\"linewidth\", _linewidth)\n\n    posteriorplot_kwargs = dict(\n        ax=ax,\n        length_plotters=length_plotters,\n        rows=rows,\n        cols=cols,\n        figsize=figsize,\n        plotters=plotters,\n        bw=bw,\n        bins=bins,\n        kind=kind,\n        point_estimate=point_estimate,\n        round_to=round_to,\n        credible_interval=credible_interval,\n        multimodal=multimodal,\n        ref_val=ref_val,\n        rope=rope,\n        ax_labelsize=ax_labelsize,\n        xt_labelsize=xt_labelsize,\n        kwargs=kwargs,\n        titlesize=titlesize,\n        backend_kwargs=backend_kwargs,\n        show=show,\n    )\n\n    if backend == \"bokeh\":\n\n        posteriorplot_kwargs.pop(\"xt_labelsize\")\n        posteriorplot_kwargs.pop(\"titlesize\")\n\n    # TODO: Add backend kwargs\n    plot = get_plotting_function(\"plot_posterior\", \"posteriorplot\", backend)\n    ax = plot(**posteriorplot_kwargs)\n    return ax\n", "path": "arviz/plots/posteriorplot.py"}]}