python项目:MySQL中有一个goods_train表,表里面有id、date、price。如何读取goods_train表中的date和price数据并生成echarts折线图
时间: 2023-12-03 20:43:36 浏览: 57
要生成echarts折线图,需要使用Python中的数据可视化库,比如matplotlib、seaborn、bokeh等。其中,bokeh是一个专门用于交互式数据可视化的库,非常适合生成动态的折线图。
以下是一个使用bokeh生成折线图的示例代码:
```python
from bokeh.plotting import figure, show
from bokeh.io import output_notebook
import pymysql
# 连接MySQL数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test')
# 查询goods_train表中的数据
cursor = conn.cursor()
sql = "SELECT date, price FROM goods_train"
cursor.execute(sql)
data = cursor.fetchall()
# 将数据转换为列表
date = [row[0] for row in data]
price = [row[1] for row in data]
# 初始化bokeh绘图
output_notebook() # 在Jupyter Notebook中显示图形
p = figure(title='Price over time', x_axis_label='Date', y_axis_label='Price')
# 绘制折线图
p.line(date, price, line_width=2)
# 显示图形
show(p)
```
在这个示例代码中,我们首先使用pymysql库连接到MySQL数据库,然后查询goods_train表中的数据,并将数据转换为两个列表(date和price)。接着,我们使用bokeh库的plotting模块初始化一个bokeh绘图对象,并使用line方法绘制折线图。最后,我们使用io模块的output_notebook方法将图形显示在Jupyter Notebook中,并使用show方法显示图形。
你可以根据自己的需求修改代码,比如添加标题、调整折线图的样式等。
阅读全文