• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于python:一款-Python-神器搞定自动化图表配色

python 搞代码 3年前 (2022-02-20) 52次浏览 已收录 0个评论
文章目录[隐藏]

原文链接:https://mp.weixin.qq.com/s/lw…
作者:朱小五

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

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

如何去自定义呢?

我倒是有一个想法,配色的美感须要造就,但在一开始能够在优良的作品上寻找灵感,比方经典电影、海报、风景图、Logo等等,这些都是绝佳的参考。

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

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

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

提取图片中的配色

在Python中对图片进行操作,最罕用的两个模块就是PIL和opencv了。所以一开始我的计划是,用Python库关上图片,而后遍历像素色彩,最初依照色调比例进行排序,即可失去该图片的配色计划。

后果做到一半,我发现自己疏忽了一件事。大家都晓得,Python 是一门优雅的语言,简洁的语法,弱小的性能。同时它还有领有极其丰富的第三方库,这些库简直都能够在github 或者 pypi上找到源码。

于是我搜了一下,的确有相干的库能够提取图片中的配色,那咱们就不必反复造轮子了。

这个模块就是——Haishoku,能够用于从图像中获取主色调和次要配色计划。

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

具体用法,还是先装置

pip install haishoku

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

from haishoku.haishoku import Haishoku
image = 'test.png'
haishoku = Haishoku.loadHaishoku(image)

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

主色调

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

print(haishoku.dominant)

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

运行上面这行代码

Haishoku.showDominant(image)

则会关上一个临时文件,用来预览主色调的色彩。

主色调(最多的色彩)

配色计划

#获取配色计划
pprint.pprint(haishoku.palette)

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

这里应用了pprint模块,对于这种多层嵌套的元组,正好能够好看地打印进去。

运行上面这行代码

Haishoku.showPalette(image)

则会关上一个临时文件,用来预览图片配色计划。(不会保留在本地)

配色计划

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

另外,Haishoku库从v1.1.4版本后,反对从 url 中间接加载图像。

imagepath = 'https://-blog.csdn.cn/20190222215216318.png'    haishoku = Haishoku.loadHaishoku(imagepath)

配色计划与可视化

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

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

所以这次,我抉择了Google的Logo,并提取到它的配色计划。

imagepath = 'google.png'

haishoku = Haishoku.loadHaishoku(imagepath)

pprint.pprint(haishoku.palette)

Haishoku.showPalette(imagepath)

那么,这套配色计划利用到了数据可视化中,会是怎么样呢??

用Python绘制一个饼图试试看

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

本文的代码和文件打包:https://wwe.lanzoui.com/iepTh…

其实一开始,本人自定义提取图片配色也不是一点用没有,我还随带用OpenCV制作了一个拾色器。

也就是说,Python运行时只需点击,就能够获取以后图片地位的色彩。

如果大家感兴趣的话,就右下角点个赞吧,本文点赞超过30👍,火速更新!!!


文章最初给大家介绍三个我本人写的在线文档:

第一个文档:PyCharm 中文指南 1.0 文档

花了两个多月的工夫,整顿了 100 个 PyCharm 的应用技巧,为了让老手可能间接上手,我花了很多的工夫录制了上百张 GIF 动图,有趣味的返回在线文档浏览。

第二个文档:PyCharm 黑魔法指南 1.0 文档

零碎收录各种 Python 冷门常识,Python Shell 的多样玩法,令人疯狂的 Python 炫技操作,Python 的超具体进阶常识解读,十分实用的 Python 开发技巧等。

第三个文档:Python 中文指南 1.0 文档

花了三个月工夫写的一本 适宜零根底入门 Python 的全中文教程,搭配大量的代码案例,让初学者对 代码的运作成果有一个直观感触,教程既有深度又有广度,每篇文章都会标内容的难度,是根底还是进阶的,可供读者进行抉择,是一本难得的 Python 中文电子教程。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于python:一款-Python-神器搞定自动化图表配色

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址