code: def test_plot():
      import matplotlib.pyplot as plt
  
      y, x, w = gen_data(250, 3, True, pandas=True)
      fmla = "y ~ 1 + x0 + x1 + x2"
      data = pd.concat([y, x], axis=1)
      mod = RollingWLS.from_formula(
          fmla, window=100, data=data, weights=w
      )
      res = mod.fit()
      fig = res.plot_recursive_coefficient()
      assert isinstance(fig, plt.Figure)
      res.plot_recursive_coefficient(
          variables=2, alpha=None, figsize=(30, 7)
      )
      res.plot_recursive_coefficient(
          variables="x0", alpha=None, figsize=(30, 7)
      )
      res.plot_recursive_coefficient(
          variables=[0, 2], alpha=None, figsize=(30, 7)
      )
      res.plot_recursive_coefficient(
          variables=["x0"], alpha=None, figsize=(30, 7)
      )
      res.plot_recursive_coefficient(
          variables=["x0", "x1", "x2"], alpha=None, figsize=(30, 7)
      )
      with pytest.raises(
          ValueError, match="variable x4 is not an integer"
      ):
          res.plot_recursive_coefficient(variables="x4")
  
      fig = plt.Figure()
      # Just silence the warning
      with warnings.catch_warnings():
          warnings.simplefilter("ignore")
          out = res.plot_recursive_coefficient(fig=fig)
      assert out is fig
      res.plot_recursive_coefficient(alpha=None, figsize=(30, 7))
  
imports: from io import BytesIO
  from itertools import product
  import warnings
  import numpy
  import pandas
  import pytest
  from numpy.testing import assert_allclose, assert_array_equal
  from statsmodels import tools
  from statsmodels.regression.linear_model import WLS
  from statsmodels.regression.rolling import RollingWLS, RollingOLS
label_desc: Use image node_id 14 for calling a global function with example usage: test_plot() without return types