mysql 执行时间饼图_利用grafana让mysql数据生成饼图Pie Chart

本文介绍了如何在Grafana中安装饼图插件,通过离线安装的方式将插件添加到grafana-6.5.2dataplugins目录。然后使用MySQL数据,展示收入和支出在饼图中的比例,通过编辑SQL查询从testgraph表获取数据,并设置时间过滤条件。最终,成功生成展示了MySQL执行时间的饼图。
摘要由CSDN通过智能技术生成

上次博文我们说到将mysql数据通过grafana框架展示出了折线图和柱状图,这次我们想要生成饼图。

由于grafana框架没有内置饼图的插件,所以我们需要手动安装这个插件。

step1

首先我们访问grafana官网https://grafana.com/ 在插件列表中找到饼图的插件,点开插件详情。或者直接访问饼图插件地址:

https://grafana.com/grafana/plugins/grafana-piechart-panel

阅读下方的提示,在选项卡Installation选项卡下面讲解了安装使用方法:

de3acdb64a6307c704acbf83f4640eea.png

看介绍,可以通过命令安装,也可以通过上图的最后一行中得知,可以下载离线安装包zip文件放到plugins中安装。

这次我们使用离线安装的方式安装。

点击上图中的 download the .zip file,将插件文件下载到本地。

直接解压缩到grafana软件的grafana-6.5.2\data\plugins\ 目录下面。如下图:

78fffc1172bdaac4587a1842145d4814.png

至此,离线安装插件完成,其他插件的安装方式也一样。

顺便提一句,如果使用命令行的安装方式,可以在cmd中定位到grafana的bin目录下,然后运行官网提供的安装命令即可,命令同样会在软件data\plugins\ 目录下面自动下载一份插件,命令行安装我们手动离线下载的效果是一致的,两者二选其一即可,命令行安装的方式例如这样:

422bfe53eabaee228e5df2ba11df6390.png

插件完成安装后,然后我们重启grafana服务。

step2

数据准备工作我们还是采用上篇博文中的收入和支出表,表内容不变:

019857816b59f826c7e8c1d9b37d9379.png

也就是说,我们想通过饼图来展示收入和支出各自所占的比例。

step3

访问grafana服务:http://localhost:3000/

在Home Dashboard下,点击Create your first dashboard新建一个数据面板。

这次我们会发现在Visualization下面,多了一个Pie Chart图表类型。点击选择此图表类型。

在Query中选择数据来源来自MySQL。

在下方名为A的查询条件中选择Edit SQL模式,输入查询语句:

SELECT

create_time AS "time",

value,metric

FROM testgraph

WHERE

$__timeFilter(create_time)

ORDER BY create_time desc

1

2

3

4

5

6

7

SELECT

create_timeAS"time",

value,metric

FROMtestgraph

WHERE

$__timeFilter(create_time)

ORDERBYcreate_timedesc

这个和上文中的折线图的sql语句几乎一致,只不过我们去掉了一个where条件,这次我们一条语句便可以查询出收入和支出两种状态的记录。

输入完毕后,我们点击编辑框外的空白处,在右上方选择最近7天的条件。

便会出现饼状图,如下所示:

6f3de6bfc421f573e27b3c0b4a8f4dca.png

最后别忘了保存退出。

可以去官网看看有什么好玩的插件。

在Matplotlib库中,这三个函数分别用于绘制不同类型的数据可视化图表: 1. **line_chart** (折线图): ```python import matplotlib.pyplot as plt x_data = [数据点1, 数据点2, ..., 数据点n] # 横坐标数据 y_data = [对应点1, 对应点2, ..., 对应点n] # 纵坐标数据 plt.plot(x_data, y_data) plt.xlabel('X轴标签') # X轴标签 plt.ylabel('Y轴标签') # Y轴标签 plt.title('标题') # 图表标题 plt.show() # 显示图形 ``` 2. **pie_chart** (饼图): ```python labels = ['部分A', '部分B', ..., '部分N'] # 饼图各个部分的标签 sizes = [部分A大小, 部分B大小, ..., 部分N大小] # 各部分的比例数据 fig1, ax1 = plt.subplots() ax1.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=140) # 自动百分比显示 ax1.axis('equal') # 保持圆形 plt.title('饼状图') plt.show() ``` 3. **fl_chart** (这可能是某种特定的函数名,如finance chart,实际的Matplotlib中并无此直接名称。如果是指金融时间序列折线图,可以这样做): ```python import pandas as pd df = pd.read_csv('financial_data.csv') # 假设有个CSV文件包含金融数据 df['date'] = pd.to_datetime(df['date']) # 将日期列转换为datetime类型 plt.figure(figsize=(10,6)) plt.plot(df['date'], df['price'], label='价格') plt.plot(df['date'], df['volume'], label='成交量') plt.legend() plt.title('金融时间序列折线图') plt.show() ``` 请注意,`fl_chart` 可能需要根据具体的金融数据结构和你的需求定制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值