数据可视化平台Superset
Jan. 22, 2022
superset 是由 Airbnb (知名在线短租赁公司)开源的数据分析与可视化平台(曾用名 Caravel 、 Panoramix )。 从主菜单可以看出来,第一层是数据(Data),第二层是图表(Charts),第三层是看板(Dashboards)
数据形成了图表,而图表又构成了看板
理解数据 为了能展示数据,我找到了一篇文章 Excel数据分析实例—牛油果销售分析(https://zhuanlan.zhihu.com/p/45877488),看能否用 Superset 来练习数据展示。
数据来源: Avocado Prices(https://www.kaggle.com/neuromusic/avocado-prices)
首先用 Excel 打开 avocado.csv 文件
对数据的标题稍作调整
列 含义 备注
Week 第几周
Data 日期
AveragePrice 单个牛油果的平均价格
Total Volume 牛油果销售总量 包含了3种牛油果 PLU-4046,PLU-4225, PLU-4770 单个出售量 和 按袋出售的牛油果个数 Total Bags
PLU-4046 PLU-4046的销售个数
PLU-4225 PLU-4225的销售个数
PLU-4770 PLU-4770的销售个数
Total Bags 袋装牛油果的销售总量 为以袋为单位出售的牛油果的总个数,包含小袋Small Bags,大袋Large Bags和超大袋XLarge Bags三种不同规格
Small Bags 小袋牛油果销售个数
Large Bags 大袋牛油果销售个数
XLarge Bags 超大袋牛油果销售个数
type 牛油果类型 标明牛油果是普通的还是有机的
year 年份
region 地区 表示美国不同地区的牛油果销售量,包含部分城市、西部、东北部等地区和全美总体数据
新建数据库
通过 phpMyAdmin 新建一个库 demo
上传数据 连接到新数据库 在主界面 数据库(Data) –> 数据库(Databases)
点右上侧的 + 数据库(DATABASE),在弹出界面填写 数据库名称(DATAASE NAME) 和SQLAlchemy URI
SQLAlchemy URI 和之前 config.py 中的 SQLALCHEMY_DATABASE_URI 格式是一致的,也是 mysql://用户:密码@xx.xx.xx.xx:3306/数据库名称?charset=utf8
点 测试连接(TEST CONNECTION),如果测试不通过,下方会有提示
通过之后
SQL LAB SETTINGS 页中勾选 允许 CREATE TABLE AS
扩展 页中勾选 Allow Data Upload
点 ADD 保存
注册新表(失败) 在主界面 数据库(Data) –> 数据库(Datasets)
点右上侧的 + 数据库(DATASET),在弹出界面,模式选 demo
因为 demo 是空库,所以 表也是空的,需要自己填 avocado,然后点 Create avocado
点 ADD,居然出错了,没权限?
上传 CSV(失败) 在主界面 数据库 –> 上传CSV文件
填写表名
点 保存 ,居然又出错了,显示 No such file or directory
显示不存在目录,进入容器后发现确实 /usr/local/lib/python3.8/site-packages/superset/ 确实不存在 app,依次创建 /app/static/uploads/ 三级目录,再上传
这次显示的是 Permission denied
新思路1:直接将csv作为数据源(失败) 将 avocado.csv 丢到 /docker/superset目录,右键 –> 属性 获取 所在位置
SSH 登录到群晖
从 avocado.csv 群晖拷贝到容器 amancevice-superset1 内
docker cp /volume1/docker/superset/avocado.csv amancevice-superset1:/usr/local/lib/python3.8/site-packages/superset/ 尝试将 SQLite 作为数据源
sqlite:////usr/local/lib/python3.8/site-packages/superset/avocado.csv
测试连接 失败
新思路2:将csv导入MySQL phpMyAdmin 存在文件大小的限制,所以用了 Navicat 导数据
选中表,右键选择 导入向导
格式选择 csv
添加文件
已模糊
这里不动,继续
时间的格式默认是 DMY,改为 YMD
表名不变,默认的就可以
字段也不用改,因为前面已经处理过了
第一次导入,默认还没有数据,所以选什么都一样
开始导入
已模糊
导入成功后有提示
已模糊
看一下
数据分析 在开始分析之前,重新整理下思路:
csv 因为安全原因,不能直接作为数据源; 数据不能直接导入 Superset; 需要一个 MySQL 或者其他类型的数据库作为存储; 设置数据库(Databases) 这一步,已经在 连接到新数据库 中完成了,所以可以跳过;
设置表(Datasets) 在主界面 数据库(Data) –> 数据库(Datasets)
点右上侧的 + 数据库(DATASET),在弹出界面,模式选 demo
直接点 ADD
设置图表(Charts) 在主界面 Chart –> + 图表
下拉框中选表
创建新图表
终于看到图表了,但接下来就不知道怎么玩了,这个得先学 数据分析 了吧?
参考文档 AWS 教您手把手玩转 Apache Superset 可视化 Amazon S3 里的数据 | 亚马逊AWS官方博客 地址:https://aws.amazon.com/cn/blogs/china/aws-teaches-you-to-play-with-apache-superset-to-visualize-the-data-in-amazon-s3/
mac# 篇三:自建Superset数据可视化平台并创建疫情地图网站(上)_服务器_什么值得买
地址:https://post.smzdm.com/p/a6lr6z6e/
mac# 篇四:自建Superset数据可视化平台并创建疫情地图网站(下)_服务器_什么值得买
地址:https://post.smzdm.com/p/a2592poq/
canghailan/Wuhan-2019-nCoV: 2019-nCoV 新冠状病毒 2019-12-01至今国家、省、市三级每日统计数据(支持接口读取) 地址:https://github.com/canghailan/Wuhan-2019-nCoV
如何让Superset的地图显示中文 地址:https://weibo.com/ttarticle/p/show?id=2313501000014179740838785429&sudaref=www.google.com
superset导出csv中文乱码问题_Python - UCloud云社区 地址:https://www.ucloud.cn/yun/43869.html
Excel数据分析实例—牛油果销售分析 - 知乎 地址:https://zhuanlan.zhihu.com/p/45877488