We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
mesa.visualization.chartmodule doesn't work
As shown in the picture, I run the boltzmann_wealth_model in the mesa example, but the line chart is not displayed normally. Can anyone help me?
<img width="788" alt="屏幕截图 2023-11-04 183542" src="https://github.com/projectmesa/mesa/assets/75169342/89ba1b20-4011-471b-909e-5fea97da6b73">


--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `setup.py`
Content:
```
1 #!/usr/bin/env python
2 import re
3 from codecs import open
4 
5 from setuptools import find_packages, setup
6 
7 requires = [
8     "click",
9     "cookiecutter",
10     "matplotlib",
11     "mesa_viz_tornado",
12     "networkx",
13     "numpy",
14     "pandas",
15     "solara",
16     "tqdm",
17 ]
18 
19 extras_require = {
20     "dev": [
21         "black",
22         "ruff~=0.1.1",  # Update periodically
23         "coverage",
24         "pytest >= 4.6",
25         "pytest-cov",
26         "sphinx",
27     ],
28     # Explicitly install ipykernel for Python 3.8.
29     # See https://stackoverflow.com/questions/28831854/how-do-i-add-python3-kernel-to-jupyter-ipython
30     # Could be removed in the future
31     "docs": [
32         "sphinx",
33         "ipython",
34         "ipykernel",
35         "pydata_sphinx_theme",
36         "seaborn",
37         "myst-nb",
38     ],
39 }
40 
41 version = ""
42 with open("mesa/__init__.py") as fd:
43     version = re.search(
44         r'^__version__\s*=\s*[\'"]([^\'"]*)[\'"]', fd.read(), re.MULTILINE
45     ).group(1)
46 
47 with open("README.rst", "rb", encoding="utf-8") as f:
48     readme = f.read()
49 
50 
51 setup(
52     name="Mesa",
53     version=version,
54     description="Agent-based modeling (ABM) in Python 3+",
55     long_description=readme,
56     author="Project Mesa Team",
57     author_email="projectmesa@googlegroups.com",
58     url="https://github.com/projectmesa/mesa",
59     packages=find_packages(),
60     package_data={
61         "cookiecutter-mesa": ["cookiecutter-mesa/*"],
62     },
63     include_package_data=True,
64     install_requires=requires,
65     extras_require=extras_require,
66     keywords="agent based modeling model ABM simulation multi-agent",
67     license="Apache 2.0",
68     zip_safe=False,
69     classifiers=[
70         "Topic :: Scientific/Engineering",
71         "Topic :: Scientific/Engineering :: Artificial Life",
72         "Topic :: Scientific/Engineering :: Artificial Intelligence",
73         "Intended Audience :: Science/Research",
74         "Programming Language :: Python :: 3 :: Only",
75         "Programming Language :: Python :: 3.8",
76         "Programming Language :: Python :: 3.9",
77         "Programming Language :: Python :: 3.10",
78         "License :: OSI Approved :: Apache Software License",
79         "Operating System :: OS Independent",
80         "Development Status :: 3 - Alpha",
81         "Natural Language :: English",
82     ],
83     entry_points="""
84         [console_scripts]
85         mesa=mesa.main:cli
86     """,
87     python_requires=">=3.8",
88 )
89
```
--- 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/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -8,7 +8,7 @@
     "click",
     "cookiecutter",
     "matplotlib",
-    "mesa_viz_tornado",
+    "mesa_viz_tornado~=0.1.0,>=0.1.2",
     "networkx",
     "numpy",
     "pandas",

{"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -8,7 +8,7 @@\n     \"click\",\n     \"cookiecutter\",\n     \"matplotlib\",\n-    \"mesa_viz_tornado\",\n+    \"mesa_viz_tornado~=0.1.0,>=0.1.2\",\n     \"networkx\",\n     \"numpy\",\n     \"pandas\",\n", "issue": "mesa.visualization.chartmodule doesn't work\nAs shown in the picture, I run the boltzmann_wealth_model in the mesa example, but the line chart is not displayed normally. Can anyone help me?\r\n<img width=\"788\" alt=\"\u5c4f\u5e55\u622a\u56fe 2023-11-04 183542\" src=\"https://github.com/projectmesa/mesa/assets/75169342/89ba1b20-4011-471b-909e-5fea97da6b73\">\r\n\n", "before_files": [{"content": "#!/usr/bin/env python\nimport re\nfrom codecs import open\n\nfrom setuptools import find_packages, setup\n\nrequires = [\n    \"click\",\n    \"cookiecutter\",\n    \"matplotlib\",\n    \"mesa_viz_tornado\",\n    \"networkx\",\n    \"numpy\",\n    \"pandas\",\n    \"solara\",\n    \"tqdm\",\n]\n\nextras_require = {\n    \"dev\": [\n        \"black\",\n        \"ruff~=0.1.1\",  # Update periodically\n        \"coverage\",\n        \"pytest >= 4.6\",\n        \"pytest-cov\",\n        \"sphinx\",\n    ],\n    # Explicitly install ipykernel for Python 3.8.\n    # See https://stackoverflow.com/questions/28831854/how-do-i-add-python3-kernel-to-jupyter-ipython\n    # Could be removed in the future\n    \"docs\": [\n        \"sphinx\",\n        \"ipython\",\n        \"ipykernel\",\n        \"pydata_sphinx_theme\",\n        \"seaborn\",\n        \"myst-nb\",\n    ],\n}\n\nversion = \"\"\nwith open(\"mesa/__init__.py\") as fd:\n    version = re.search(\n        r'^__version__\\s*=\\s*[\\'\"]([^\\'\"]*)[\\'\"]', fd.read(), re.MULTILINE\n    ).group(1)\n\nwith open(\"README.rst\", \"rb\", encoding=\"utf-8\") as f:\n    readme = f.read()\n\n\nsetup(\n    name=\"Mesa\",\n    version=version,\n    description=\"Agent-based modeling (ABM) in Python 3+\",\n    long_description=readme,\n    author=\"Project Mesa Team\",\n    author_email=\"projectmesa@googlegroups.com\",\n    url=\"https://github.com/projectmesa/mesa\",\n    packages=find_packages(),\n    package_data={\n        \"cookiecutter-mesa\": [\"cookiecutter-mesa/*\"],\n    },\n    include_package_data=True,\n    install_requires=requires,\n    extras_require=extras_require,\n    keywords=\"agent based modeling model ABM simulation multi-agent\",\n    license=\"Apache 2.0\",\n    zip_safe=False,\n    classifiers=[\n        \"Topic :: Scientific/Engineering\",\n        \"Topic :: Scientific/Engineering :: Artificial Life\",\n        \"Topic :: Scientific/Engineering :: Artificial Intelligence\",\n        \"Intended Audience :: Science/Research\",\n        \"Programming Language :: Python :: 3 :: Only\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Operating System :: OS Independent\",\n        \"Development Status :: 3 - Alpha\",\n        \"Natural Language :: English\",\n    ],\n    entry_points=\"\"\"\n        [console_scripts]\n        mesa=mesa.main:cli\n    \"\"\",\n    python_requires=\">=3.8\",\n)\n", "path": "setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\nimport re\nfrom codecs import open\n\nfrom setuptools import find_packages, setup\n\nrequires = [\n    \"click\",\n    \"cookiecutter\",\n    \"matplotlib\",\n    \"mesa_viz_tornado~=0.1.0,>=0.1.2\",\n    \"networkx\",\n    \"numpy\",\n    \"pandas\",\n    \"solara\",\n    \"tqdm\",\n]\n\nextras_require = {\n    \"dev\": [\n        \"black\",\n        \"ruff~=0.1.1\",  # Update periodically\n        \"coverage\",\n        \"pytest >= 4.6\",\n        \"pytest-cov\",\n        \"sphinx\",\n    ],\n    # Explicitly install ipykernel for Python 3.8.\n    # See https://stackoverflow.com/questions/28831854/how-do-i-add-python3-kernel-to-jupyter-ipython\n    # Could be removed in the future\n    \"docs\": [\n        \"sphinx\",\n        \"ipython\",\n        \"ipykernel\",\n        \"pydata_sphinx_theme\",\n        \"seaborn\",\n        \"myst-nb\",\n    ],\n}\n\nversion = \"\"\nwith open(\"mesa/__init__.py\") as fd:\n    version = re.search(\n        r'^__version__\\s*=\\s*[\\'\"]([^\\'\"]*)[\\'\"]', fd.read(), re.MULTILINE\n    ).group(1)\n\nwith open(\"README.rst\", \"rb\", encoding=\"utf-8\") as f:\n    readme = f.read()\n\n\nsetup(\n    name=\"Mesa\",\n    version=version,\n    description=\"Agent-based modeling (ABM) in Python 3+\",\n    long_description=readme,\n    author=\"Project Mesa Team\",\n    author_email=\"projectmesa@googlegroups.com\",\n    url=\"https://github.com/projectmesa/mesa\",\n    packages=find_packages(),\n    package_data={\n        \"cookiecutter-mesa\": [\"cookiecutter-mesa/*\"],\n    },\n    include_package_data=True,\n    install_requires=requires,\n    extras_require=extras_require,\n    keywords=\"agent based modeling model ABM simulation multi-agent\",\n    license=\"Apache 2.0\",\n    zip_safe=False,\n    classifiers=[\n        \"Topic :: Scientific/Engineering\",\n        \"Topic :: Scientific/Engineering :: Artificial Life\",\n        \"Topic :: Scientific/Engineering :: Artificial Intelligence\",\n        \"Intended Audience :: Science/Research\",\n        \"Programming Language :: Python :: 3 :: Only\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Operating System :: OS Independent\",\n        \"Development Status :: 3 - Alpha\",\n        \"Natural Language :: English\",\n    ],\n    entry_points=\"\"\"\n        [console_scripts]\n        mesa=mesa.main:cli\n    \"\"\",\n    python_requires=\">=3.8\",\n)\n", "path": "setup.py"}]}