作者 | 张小墨

责编 | 郭   芮

随着“中台”的火热,数据中台逐渐为人所知,让很多原本隐于水下的岗位浮出了水面,比如数据产品经理、数据分析师等。“数据可视化”就是上述岗位的看家本领之一。所谓颜值即正义,数据可视化水平很大程度影响了工作输出质量。

那到底什么是数据可视化,如何实现数据可视化,作为产品经理,又该如何设计一个自研的可视化系统/工具呢?

什么是数据可视化?

俗语有曰:字不如表,表不如图。

数据可视化就是通过易读、易懂、易操作的图表,给用户带来良好的视觉效果,降低用户的理解难度,从而实现用数字给用户讲个故事的工作目的。

简单理解,数据可视化=数据+可视化,数据内容是基础,可视化是用图形化的方式呈现,并借此传达信息的方式。

所以数据内容是可视化的内核,单纯追求可视化炫酷的意义并不大,拥有了优质的数据内容,可视化的意义方得以凸显。

如何实现数据可视化?

实现数据可视化,步骤并不复杂,就像把大象放冰箱里,同样分成三步:数据准备、可视化设计与内容分发。

1、数据准备

数据分析的目的是为了解决问题,从而给公司与部门提供存在参考价值的分析内容,完成上述内容的基础就是数据,各种数据。

数据准备就是为了明确数据范围,减少数据量,通过采集、统计、分析与归纳,梳理出我们需要的数据结果表。

梳理出的数据内容,存储方式就是简单的使用Excel,也可以使用MySQL或者Hive等等,这需要根据数据量和查询性能的要求来选择。

数据分析人员使用数据表时,通过单表查询或者多表关联的方式,完成其数据分析工作,就可以进入可视化设计环节了。

2、可视化设计

工欲善其事,必先利其器。

使用最频繁的可视化工具可能还是Excel,除此之外,还可以通过R语言、Python结合JS,通过代码的方式来实现,但是这些实现方式,学习与操作成本略高。

如今市面上可选的可视化工具有很多:Tableau、海致BDP、帆软FineBI、PowerBI、网易有数等等,通过基础的SQL能力结合鼠标的拖拽操作,就可以完成可视化设计。

(海致BDP操作页)

用鼠标对数据表字段进行拖拽,就可以实现维度与指标的设置,还可以添加筛选条件,再结合SQL查询,便完成了可视化报表的制作。

而在工具越来越实用的前提下,考验我们的还有设计与审美能力,我们需要注意的有:

A、减少数字噪音,选择合适的图表

图表有很多选择,并不是复杂的图表才算上档次,大道至简,越是简单的图表,越是能让用户理解我们所要表达的内容。

简单总结一下:

  • 基本图表:折线图、散点图、条形图、柱状图、气泡图、组合图、面积图、饼图等;

  • 复杂图表:仪表盘、地图、流向地图、热力地图、树形图、框架图、漏斗图、甘特图、词云图、雷达图等。

选择图表时,需要了解不同图表的优劣以及它们适合的应用场景,尽量较少数据噪音,不要同时给予用户太多的内容。

但也不是不可以使用复杂图表,某些场景下复杂图表可能更能清晰的表达数据背后的含义,那用一下也未尝不可。

B、颜色搭配合理,多维度交互搭配

关于配色,仁者见仁,智者见智,有各种流派。

就笔者而言,更倾向于尽量少使用艳色调,多使用渐变色,确保辨识度,而需要对比的数据可以选择对比色或者互补色。

建议大家多去一些配色网站看看,如:Material Palette、Material UI Colors等等,也可以多去Dribbble、堆糖、花瓣或者千图这些网站溜达一下。

(From:Material UI Colors)

看的越多,就会越有感觉,获得一种积累而产生的灵感。

至于说到多维度的交互,常见的有以下几种:

  • 筛选:通过设置过滤条件,实现不同维度数据的组合展现;

  • 钻取:实现不同层次的数据的分层展示,如上下级部门等;

  • 联动:通过一个图形的变化,联动其他图形的变化,如选择饼图中的某一个色块,则底部趋势表显示对应内容的趋势变化等。

当然还有很多的其他交互,只要可以为用户展示有效的数据内容,满足用户的业务需要,那就是好交互。

好看又好用,便是数据可视化的意义。

3、内容分发

数据可视化最终的产物是一张图数并茂的报表,我们可以通过很多方式传达给用户,最简单莫过于直接提供源文件或者截图,但这样过于笨重与低效。

数据平台类产品就承担了高效分发报表的责任,如BI平台、移动BI平台等,即实现了对报表查看权限的控制,又实现了对报表数据权限的控制。

我们也可以直接使用第三方工具直接完成内容分发,诸如Tableau之类的工具,都可以在本地化部署的基础上实现内容分发,不过出于功能扩展性与数据安全性等多方面考虑,不少公司依旧选择用自研的方式来打造自己的数据可视化系统。

下面,就让我们简单了解一下,我们该如何打造一款数据可视化系统/工具。

可视化系统/工具的设计思路

该部分内容旨在简单介绍企业BI系统或大数据分析平台等数据可视化产品的设计思路,为产品设计人员提供参考的同时,也为感兴趣的读者剖析解密一下此类数据产品。

1、数据源管理

此类产品目前支持的数据源越来越多了,毕竟数据是进行数据分析与可视化的基础,无法连接数据源,下面一切的工作都将无法开展。

(海致BDP数据源管理页)

在进行此类产品设计时,优先需要完成公司现有数据源的调研,然后再根据实际场景,选定项目所要支持的数据源。

因为不同的数据库存在不同的优劣势,可视化报表除了数据准确与样式交互合理,对于数据查询速度同样存在要求,我们不可能让用户进行一次点选操作后,等待数分钟。

比如,当数据量达到亿这个量级,MySQL就不太适合了,这个时候更适合选择一些分布式数据库,如HBase等。

根据平台数据量与公司现有能力,选定需要支持的数据源,这是此类产品设计的第一步。

2、图表库管理

图表库,就像“弹药库”,但是图表组件的封装是个持久战,耗时耗力,需要耗费大量的前端开发资源,不过我们可以使用ECharts这类开源图表库:

(From:ECharts)

根据可视化需要,不断完善自研系统的图表库,可以让数据分析师使用可视化工具时,做到“信手拈来”,那就算是有所小成了。

3、报表开发与分发

报表开发与分发是数据可视化系统的核心功能,该部分在实现报表开发的同时,还需要完成权限(查看权限与数据权限)的配置。

实现该部分功能设计,有一个“捷径”,去学习市面上主流可视化工具的实现方式,他们详实的产品帮助文档都是自研产品设计的“灵感源泉”。

(帆软FineBI首页)

至于权限的控制,也有很多方式,比如做单点读取用户权限表等,对数据权限的控制,是数据安全的必备项。

通过以上步骤,我们就完成了自研可视化工具的产品设计,但该部分涉及内容较多,作为简单介绍,本文不再过多展开。

结语

数据可视化,需要以用户为中心,以用户体验为基础,输出可视化报表,为业务赋能。

在公司不具备或者没有必要进行可视化工具自研的情况下,大量的可视化工具可供诸君选用,正所谓:君子生非异也,善假于物也。

作者:张小墨,互联网从业者,产品经理中的文青儿。本文首发自公众号:月光坦克(moontank1918)。

声明:本文为作者投稿,版权归其所有。

快速挑战Python全栈工程师:

https://edu.csdn.net/topic/python115?utm_source=csdn_bw

【END】

今日七夕!不取标题,只想娶你

TIOBE 8 月编程语言排行榜:Python 奋力追赶 C,Swift 下跌

被罚 50 亿后,Google 不再强制绑定 Android 默认引擎!

☞ 张一鸣:我用排除法选工作和择偶

☞重磅!AI Top 30+案例评选正式启动☞自然语言处理十问!独家福利☞容器快速入门完全指南☞媒体巨头进军区块链!纽约时报将用区块链技术打击假新闻为什么雷军说“华为不懂研发”?

点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。

你点的每个“在看”,我都认真当成了喜欢

@程序员,你真的懂数据可视化吗?相关推荐

  1. 数据时代程序员必备技能:数据可视化

    说到数据可视化,大家可谓耳熟能详,设计师.数据分析师.数据科学家等,都用各种方式各种途径做着数据可视化的工作......实际上,我们每一个人,天生具有可视化思维,甚至经常性地做一些可视化操作. 比如, ...

  2. 程序员如何轻松实现数据可视化?

    这里以Web前端为例,简单介绍一下程序员是如何实现前端数据可视化的,主要内容如下: Highcharts.js 这是一个纯粹的JavaScript可视化库,完美支持移动端,可以快速的为Web网站添加具 ...

  3. python程序员专用壁纸_数据可视化!看看程序员大佬都推荐的几大Python库

    数据可视化是数据分析中极为重要的部分,而数据可视化图表(如条形图,散点图,折线图,地理图等)也是非常关键的一环.Python作为数据分析中最流行的编程语言之一,有几个库可以创建精美而复杂的数据可视化, ...

  4. Java程序员应该搞懂的六个问题

    Java程序员应该搞懂的六个问题 太平洋电脑网 作者:雷少 对于这个系列里的问题,每个学Java的人都应该搞懂.当然,如果只是学Java玩玩就无所谓了.如果你认为自己已经超越初学者了,却不很懂这些问题 ...

  5. 只有程序员看的懂面试圣经

    技术圈 只有程序员看的懂面试圣经|如何拿下编程面试 http://www.epubit.com.cn/article/197 当我最初开始参加编程面试的时候,我所有最心仪的公司都忽视了我.现在回头看那 ...

  6. 程序员也可以懂一点期望值管理

    刚开始做程序员的时候,主要的心思都放在代码上,没有太关注和其他人之间的相处,更没有考虑过期望值和管理期望值的事情.直到我后来开始做技术管理,有一次听老板跟我讲:"管理,最重要的就是管理期望值 ...

  7. IT界流传的经典段子,最后一个只有程序员才能看懂

    关于程序员的段子可谓是数不胜数,甚至好多程序员自黑成性,出现了很多程序员才能看懂的段子,今天乐呵乐呵,给大家列几个程序员段子让大家放松下. 全能超人 程序员=加班狂+程序员+测试工程师+实施工程师+网 ...

  8. 只有程序员看的懂的面试圣经|如何拿下编程面试

    只有程序员看的懂的面试圣经|如何拿下编程面试 摘要:当我最初开始参加编程面试的时候,我所有最心仪的公司都忽视了我.现在回头看那个时候,我发现自己当时去参加面试都完全没做任何准备.虽然已经有许多博客文章 ...

  9. 【职场】你做程序员,真的是因为热爱吗?

    今天的这一期,我们不聊技术,我们来聊一聊我们做程序员的初心,以及如何才能高效的学习编程和技术~ 01 你的初心 前一阵子,圈子里的一位知名的博主从老东家离职了,离职的视频看了一遍,尤其是其中他的一句话 ...

最新文章

  1. MVTN:用于3D形状识别的多视图转换网络(ICCV2021)
  2. 加密算法、DES、IDEA、RSA、DSA
  3. php sqlserver扩展,PHP---连接sqlserver扩展配置
  4. 零基础学Python(第十二章 列表【list】)
  5. 【Tika基础教程之一】Tika基础教程
  6. win10格式化linux分区,直接删除linux分区再重装linux可以恢復启动么,我是直接在win10里把linux mint...
  7. PyRun_SimpleFile()崩溃问题
  8. 服务器应用日志清理,Linux下Tomcat日志定期清理
  9. 印度智能手机市场Q1出货量同比增长7% 小米蝉联榜首
  10. 下载频道12月热门资源TOP100强力推荐!
  11. Java创建Zip文件示例
  12. 双目测距算法matlab模拟,基于BM算法的双目测距.pdf
  13. KiCad 部分插件安装
  14. 猜拳php代码,使用JavaScript如何实现猜拳游戏(详细教程)
  15. Conflux DAO 社区技术委员会成立 助力生态繁荣发展
  16. 罗格斯大学电子与计算机系排名,从罗格斯大学的专业排名看罗格斯大学的实力...
  17. 【华为OD机试真题 JS】出错的或电路
  18. 企业邮箱登录地址设置公司域名
  19. 程雷被机器人_机器人登台表演节目?程雷惨遭机器人戏耍郭德纲一旁大笑!
  20. 计算机内存主要技术参数,一分钟读懂计算机内存SDR、DDR的技术规格

热门文章

  1. 矩池云上复现论文 Neural Graph Collaborative Filtering 环境复现
  2. mac os 开启redis_【漫画】谈谈Redis持久化
  3. 剑指offer之青蛙跳台阶
  4. 数字式轮胎气压计行业调研报告 - 市场现状分析与发展前景预测
  5. 中国体外冲击波碎石机市场趋势报告、技术动态创新及市场预测
  6. 中国抗衰老护肤品市场趋势报告、技术动态创新及市场预测
  7. 2021年中国以太网转换器市场趋势报告、技术动态创新及2027年市场预测
  8. 下拉样式_Axure 组件重写之神奇的文本框和下拉框
  9. Linux Kernel 5.13 稳定版发布:初步支持 M1 芯片
  10. 写代码时发现......还是SpringBoot牛逼!