Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python 可视化如何配色?这个工具你值得拥有

Python 可视化如何配色?这个工具你值得拥有

原创
作者头像
程序员小二
发布于 2021-12-27 12:24:47
发布于 2021-12-27 12:24:47
1.1K00
代码可运行
举报
文章被收录于专栏:python小分享python小分享
运行总次数:0
代码可运行

我们在利用Python进行数据可视化时,有着大量的高质量库可以用,比如:MatplotlibseabornPlotlyBokehggplot等等。但图表好不好看,配色占一半。如果没有良好的审美观,很容易做出来的东西辣眼睛……

所以想做好数据可视化,就要有合适的配色方案。除了可以借鉴参考配色网站的案例,也可以自己自定义一套配色方案。

如何去自定义呢?

我倒是有一个想法,配色的美感需要培养,但在一开始可以在优秀的作品上寻找灵感,比如经典电影、海报、风景图、Logo等等,这些都是绝佳的参考。

自然风景的颜色往往令人惊艳,咱们不妨以风景图为例。下图是一副海上夕阳图,通过一番操作就提取到了一套配色方案(见图右)。

那么,我们用Python能不能做到呢?

答案当然是可以,毕竟Python除了不能生孩子,什么都能做!

提取图片中的配色

在Python中对图片进行操作,最常用的两个模块就是PIL和opencv了。所以一开始我的方案是,用Python库打开图片,然后遍历像素颜色,最后按照色彩比例进行排序,即可得到该图片的配色方案。

结果做到一半,我发现自己忽略了一件事。大家都知道,Python 是一门优雅的语言,简洁的语法,强大的功能。同时它还有拥有极其丰富的第三方库,这些库几乎都可以在github 或者 pypi上找到源码。

于是我搜了一下,确实有相关的库可以提取图片中的配色,那我们就不用重复造轮子了。

这个模块就是——Haishoku,可以用于从图像中获取主色调和主要配色方案。

其GitHub网址为:https://github.com/LanceGin/haishoku

具体用法,还是先安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install haishoku

将前文提到的海上夕阳图,保存到本地并命名为test.png

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from haishoku.haishoku import Haishoku
image = 'test.png'
haishoku = Haishoku.loadHaishoku(image)

导入模块,运行代码会返回一个Haishoku实例,你可以通过实例属性haishoku.dominanthaishoku.palette,从而直接获取到对应的主色调和配色方案。

主色调

首先,要怎么获取图片的主色调呢?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
print(haishoku.dominant)

这返回了一个结构为 (R, G, B) 的元组,就是该图片的主色调。

运行下面这行代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Haishoku.showDominant(image)

则会打开一个临时文件,用来预览主色调的颜色。

主色调(最多的颜色)

配色方案

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#获取配色方案
pprint.pprint(haishoku.palette)

返回一个结构为:[(R, G, B), (R, G, B), …] 最大长度为8的数组。

这里使用了pprint模块,对于这种多层嵌套的元组,正好可以美观地打印出来。

运行下面这行代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Haishoku.showPalette(image)

则会打开一个临时文件,用来预览图片配色方案。(不会保存在本地)

配色方案

就这样,只需几行代码就提取到图片中的配色方案,是不是很简单。

另外,Haishoku库从v1.1.4版本后,支持从 url 中直接加载图像。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
imagepath = 'https://img-blog.csdnimg.cn/20190222215216318.png'
    
haishoku = Haishoku.loadHaishoku(imagepath)

配色方案与可视化

通过前面的操作,我们就提取到了合适的配色,那么就实战一下吧。

经典电影、海报、风景图、Logo都是绝佳的参考对象。

所以这次,我选择了Google的Logo,并提取到它的配色方案。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
imagepath = 'google.png'

haishoku = Haishoku.loadHaishoku(imagepath)

pprint.pprint(haishoku.palette)

Haishoku.showPalette(imagepath)

那么,这套配色方案应用到了数据可视化中,会是怎么样呢??

这次用刚才得到的Google配色,Python绘制一个环形图试试看

感觉还不错,这套配色方案我要收藏起来。如果大家觉得本文还不错,记得给个一键三连!

我们的文章到此就结束啦,如果你喜欢今天的Python 实战教程,请持续关注我。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据可视化:如何为数据寻找适合的配色
本期责编:Sophie 文 | Samantha Zhang 来源 | GRAPHIQ 摘要:虽然如今好的配色方案已经唾手可得,但为数据可视化找到合适的配色方案,却仍是一项巨大挑战。 在Graphiq,事情甚至更加棘手,因为我们要通过上千种各不相同的数据集合来传递信息,它们有着各自迥异的视觉表现。 目前的问题 我们没有立刻开始建立自己的配色表,而是发起了一些调查,研究网络上已存在的配色方案。令人惊讶的是,我们发现其中只有少数是为复杂的图表和数据可视化而设计的。我们发现一些不能使用现有配色的原因。 问题1:辨
CDA数据分析师
2018/02/24
1.7K0
数据可视化:如何为数据寻找适合的配色
数据可视化配色指南:三大配色方法,做出咨询报告一样的图表
可是学习色彩设计,又是十分费工夫的一件事,不仅要搞明白RGB、CMYK等各种颜色体系,搞懂各种配色方法,重点是还要看大量的案例,培养良好的审美观,防止自己做出来的东西辣眼睛……
Python数据科学
2019/10/31
1.9K0
数据可视化配色指南:三大配色方法,做出咨询报告一样的图表
数据可视化配色指南:三大配色方法,做出咨询报告一样的图表丨附在线工具资源
可是学习色彩设计,又是十分费工夫的一件事,不仅要搞明白RGB、CMYK等各种颜色体系,搞懂各种配色方法,重点是还要看大量的案例,培养良好的审美观,防止自己做出来的东西辣眼睛……
量子位
2019/10/31
9180
数据可视化配色指南:三大配色方法,做出咨询报告一样的图表丨附在线工具资源
《Site Palette》自动提取网站配色
Site Palette是一款自动提取网站配色的扩展程序,有助于开发者快速了解网站的"调(四声diao)性"
zhaoolee
2019/07/15
8790
《Site Palette》自动提取网站配色
8 条数据可视化配色规则
数据可视化的目标是传达来自数据分析工作流的关键结果。 虽然图表需要美观,但可视化的首要目标不是“高颜值”。
张俊红
2023/03/21
1.1K0
8 条数据可视化配色规则
遇见大数据可视化:可视化系统搭建
该文总结了技术社区在数据可视化方面的一些实践和思考。通过具体案例,介绍了数据可视化的概念、设计原则、图表类型、颜色和字体等方面的实践,并探讨了数据可视化的极限处理。
腾讯大数据可视化设计团队
2017/06/13
10.8K4
遇见大数据可视化:可视化系统搭建
【独家】一文读懂数据可视化
前言 数据可视化,是指将相对晦涩的的数据通过可视的、交互的方式进行展示,从而形象、直观地表达数据蕴含的信息和规律。 早期的数据可视化作为咨询机构、金融企业的专业工具,其应用领域较为单一,应用形态较为保守。步入大数据时代,各行各业对数据的重视程度与日俱增,随之而来的是对数据进行一站式整合、挖掘、分析、可视化的需求日益迫切,数据可视化呈现出愈加旺盛的生命力,表现之一就是视觉元素越来越多样,从朴素的柱状图/饼状图/折线图,扩展到地图、气泡图、树图、仪表盘等各式图形。表现之二是可用的开发工具越来越丰富,从专业的
数据派THU
2018/01/29
2.7K0
【独家】一文读懂数据可视化
​python之筛选图像中是否存在黑白背景
这次不比上次了,我搜罗了一堆资料,全是什么人工智能领域的图像识别,AI识别之类的,没有能够符合我需求的,看来CV大法这次是失策了。
梦无矶小仔
2022/12/20
1.5K0
​python之筛选图像中是否存在黑白背景
8个流行的Python可视化工具包
用 Python 创建图形的方法有很多,但是哪种方法是最好的呢?当我们做可视化之前,要先明确一些关于图像目标的问题:你是想初步了解数据的分布情况?想展示时给人们留下深刻印象?也许你想给某人展示一个内在的形象,一个中庸的形象?
数据STUDIO
2023/11/14
1.1K0
8个流行的Python可视化工具包
canvas图像识取技术以及智能化设计的思考
笔者最近一直在研究 前端可视化 和 搭建化 的技术, 最近也遇到一个非常有意思的课题, 就是基于设计稿自动提取图片信息, 来智能化出码. 当然本文并不会介绍很多晦涩难懂的技术概念, 我会从几个实际应用场景出发, 介绍如何通过canvas图像识取技术来实现一些有意思的功能. 最后会总结一些对智能化的思考以及对低代码方向的规划, 希望能对各位有所启发.
徐小夕
2021/07/12
9090
可视化系统搭建--遇见大数据可视化系列文章之四
如何搭建数据可视化系统,用丰富的设计语言清晰表达复杂和庞大数据,并形成鲜明的设计风格?我们把数据可视化的元素进行拆分并建立相应的规范体系。 图表设计 1. 图表基本类型 六种基本图表涵盖了大部分图表使用场景,也是做数据可视化最常用的图表类型: 柱状图   分类照片照片什么照片什么什么项目之间的比较; 饼图   构成即部分占总体的比例; 折线图   随时间变化的趋势; 条形图   分类照片照片什么照片什么什么项目之间的比较; 散点图   相关性或分布关系; 地图   区域之间的分类照片照片什么照片什么什么比较
腾讯ISUX
2018/06/29
1.5K0
Python数据可视化 词云图 绘制词云的方法总结
pyecharts是基于echarts的python库,能够绘制多种交互式图表,和其他可视化库不一样,pyecharts支持链式调用。
叶庭云
2020/09/17
32.5K0
Python数据可视化   词云图  绘制词云的方法总结
配色绝了!!这个新闻可视化在线工具值得你学习~~
这里就有小伙伴私信小编问有没有偏新闻可视化配色的学习资源或者工具?正好小编这几天在收集优质可视化作品和在线工具,就给她推荐了「Datawrapper」,自己后来也详细看了,果然,真香,一些优秀的在线可视化工具有着代码短期内不能比的优点,这里小编也建议大家在选择可视化工具的时候,不要执着于代码或者工具,要灵活使用。好了,接下来小编就带大家简单介绍一下「Datawrapper」,主要分为以下两块:
DataCharm
2022/05/24
1.8K0
配色绝了!!这个新闻可视化在线工具值得你学习~~
拒绝“枯燥”设计 | 页面自动化配色的探索之路
作者lamchen  腾讯IEG设计中心 设计师 |导语  我们在WeGame详情页设计改版探索中,无意间接触到了图片取色技术。经历一年的摸索和实践,我们在现有取色技术的基础上,制定了自动化配色策略,并相继优化了助手专区,商城节日氛围,以及特色卡片等多个业务场景,取得了较为不错的效果。谨以此文,抛砖引玉,聊聊我们关于图片取色技术在UI设计中的实践心得。 01 自动化配色构想 众所周知,WeGame是面向国内外游戏玩家的一个游戏发行产品;产品中对于单款游戏的详情页,是产品中最基础、也是最核心的内容。 在
腾讯大讲堂
2021/03/01
1.6K0
如何设计数据可视化平台
最近在项目上常常听到这样的话:“我想要一个酷炫的数据大屏”,“设计一定要有科技感”,“这个可视化设计没有重点”……每当听到这些需求,作为设计师一般都是欲哭无泪的。到底什么叫酷炫有科技感?客户理解的数据大屏什么样?是数据还是可视化出了问题?? 这篇文章将会结合最近在数据可视化项目上的一些经历,从设计的角度,聊一聊什么是数据可视化,为什么需要可视化设计,以及该从何处着手来设计一个数据可视化平台。 1. 什么是数据可视化设计?(WHAT) 在聊如何设计数据可视化平台前,想先聊一下我所理解的数据可视化。“数据可视化
ThoughtWorks
2022/06/29
1.2K0
如何设计数据可视化平台
「 泛政务设计 」可视化色彩体系的配色方法探索
图表是中后台产品最常见的界面信息元素之一,能够直观地展示数据、支撑观点。因大脑对视觉信息的处理优于对文本的处理,所以把数据进行可视化,可以更容易的解释数据模式、趋势、统计规律和数据相关性,也让视觉上也更丰富、美观。 图表的色板是传达信息、美感和情感的重要元素之一。配色不仅要清晰、准确传达信息,给予用户基本的美感,同时需要在多种颜色中,兼顾品牌感,使图表配色不脱离整体的品牌气质。 那是否有什么方法来指导辅助色的建立呢?本文总结了政务类产品在可视化图表配色上的一些探索思路和实践方法。 设计背景与目标 1. 现状
腾讯云设计中心
2022/05/05
2.4K0
「 泛政务设计 」可视化色彩体系的配色方法探索
使用交互式地图和动画可视化伦敦的自行车流动性(下)
上面的代码使用了一种动态的颜色方案,这取决于站点的容量。我们还可以根据每个站点的出发和到达次数,为这些圆形标记实现动态半径方案。我们可以得到我们所称的密度图,显示每个车站的净出发/到达人数。
AiTechYun
2020/02/23
7950
善用图片-你将有不一样的可视化效果
今天在查找资料时发现了一个超酷的R语言第三方颜色包 R-ghibli,目前可以直接通过 CRAN 安装的。官网(https://ewenme.github.io/ghibli/)所示的图例如下:
DataCharm
2021/02/22
5180
善用图片-你将有不一样的可视化效果
(数据科学学习手札71)在Python中制作个性化词云图
词云图是文本挖掘中用来表征词频的数据可视化图像,通过它可以很直观地展现文本数据中地高频词:
Feffery
2019/11/18
1.3K0
【Python环境】Python可视化工具综述
简介 在Python的世界里,可视化你的数据有多种选择。由于这种多样性,决定何时使用哪一个确实是种挑战。这篇文章包含由更受欢迎的包中的一部分制作的示例,并说明如何使用它们创建一个简单的条形图。我将使用: Pandas Seaborn ggplot Bokeh pygal Plotly 在例子中,我将使用Pandas处理数据并驱动可视化。大多数情况下这些工具可以在没有pandas的环境中运行,但是我认为pandas和可视化工具的结合非常普遍,这是最合适的开始之处。 Matplotlib怎么样? Matpl
陆勤_数据人网
2018/02/27
2.6K0
【Python环境】Python可视化工具综述
推荐阅读
相关推荐
数据可视化:如何为数据寻找适合的配色
更多 >
领券
一站式MCP教程库,解锁AI应用新玩法
涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档