本人在学习使用 Python 数据可视化工具 plotly 的过程中,实际的需求是将数据库中的数据展示出来,经过尝试终于完成了第一步,把数据库某列数据取出来,然后再在本地生成 html 文件。下面分享一下代码,供大家参考。

#!/usr/bin/python
# coding=utf-8

import pymysql
import plotly.plotly
from plotly.graph_objs import *
import plotly.graph_objs as abc  # 必须

host = "192.168.10.111"
user = "*****"
passwd = "*****"
db = "api_test"
port = 3306
charset = "utf8"
# 新建链接
conn = pymysql.connect(
    host=host,
    port=port,
    user=user,
    passwd=passwd,
    db=db,
    charset=charset,
)
# 获取链接
cur = conn.cursor()
# 执行sql
re = cur.execute("SELECT * FROM api_result WHERE api_name = \"/article/list/userfeed\"")
# 返回结果
dfs = cur.fetchall()
# 存放查询结果
sss = []
# 排除异常数据
for row in dfs:
    if row[7] < 1:
        sss.append(row[7])
# 关闭链接
cur.close()
conn.commit()
conn.close()
# 获取结果长度
length = sss.__len__()
# 新建x轴数组
listx = []
for i in range(length):
    listx.append(i)
data_1 = abc.Scatter(
    x=listx,
    y=sss,
    name='test1',  # 名称
    mode='markers',
    # 格式
    marker=dict(
        size=10,  # 点的大小
        color="rgba(255,47,167,.9)",  # 点的颜色
        line=dict(  # 点外围环的属性
            width=2,  # 环的宽度
            color='rgb(2,2,2)'  # 环的颜色
        )
    )
)
data1 = Data([data_1])
plotly.offline.plot(data1)

中间根据官网提供的教程对图标进行了美化,主要是修改了点的颜色和外环的属性。

下面是效果图:

点击查看所有文章


↙↙↙阅读原文可查看相关链接,并与作者交流