目录:
全文速览
一、Catppuccin简介
二、Catppuccin在Python绘图中的应用
1. 支持的绘图库
2. 安装方法
3. 在Matplotlib中使用Catppuccin
三、Catppuccin配色方案详解
1. 示例颜色
2. 应用颜色
四、优势与应用场景
五、注意事项
六、matplotlib美化的示例
全文速览
数据可视化的过程中,美观的配色方案可以大大提升图表的可读性和专业性。Catppuccin是一套备受欢迎的柔和色彩主题,被广泛应用于编辑器、终端和各种应用程序。近期,Catppuccin也推出了针对Python绘图库的样式支持,使得开发者可以在Matplotlib、Seaborn等库中轻松应用这一美观的配色方案。本文将详细介绍Catppuccin绘图样式库的特点、安装方法以及在Python中的实际应用。
下图是Matplotlib传统样式:进行Catppuccin美化后:
一、Catppuccin简介
Catppuccin是一套以咖啡饮品为灵感的柔和、中性色调的配色方案。其目标是提供一种既美观又护眼的配色,减少长时间注视屏幕对眼睛的疲劳。Catppuccin的配色方案包括了多种颜色,适用于代码高亮、界面主题以及数据可视化等场景。
Catppuccin的特点
柔和的色彩:避免了高对比度和过于鲜艳的颜色,减轻视觉疲劳。 一致性:在不同的应用和平台上保持一致的色彩体验。 多种风格:提供了多个变体,如Latte、Frappe、Macchiato和Mocha,满足不同用户的喜好。 社区驱动:由社区贡献和维护,持续更新和完善。
二、Catppuccin在Python绘图中的应用
1. 支持的绘图库
Matplotlib:Python最基础的绘图库,Catppuccin提供了定制的样式表。 Seaborn:基于Matplotlib的高级绘图库,能够直接继承Matplotlib的样式。 Plotly:交互式绘图库,可通过自定义颜色参数应用Catppuccin的配色。
2. 安装方法
Catppuccin的绘图样式库通常以Python包或样式文件的形式提供。以下是安装步骤:
方法一:通过pip安装
pip install catppuccin
方法二:手动下载样式文件
访问Catppuccin的GitHub仓库。 找到针对Matplotlib或其他绘图库的样式文件。 下载样式文件(通常以 .mplstyle
为后缀)。将样式文件放置在Matplotlib的样式目录下,或者指定样式文件的路径。
3. 在Matplotlib中使用Catppuccin
import catppuccin
import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.style.use(catppuccin.PALETTE.mocha.identifier)
plt.plot([0,1,2,3], [1,2,3,4])
plt.show()
如果样式文件不在默认路径,可以指定完整路径:
三、Catppuccin配色方案详解
Catppuccin提供了四种主要的风格,每种风格都有一套对应的颜色:
Latte:明亮主题,适合光照充足的环境。 Frappe:稍暗的主题,介于明亮和暗色之间。 Macchiato:暗色主题,柔和的暗色调。 Mocha:深色主题,适合夜间或暗光环境。
每种风格都有一组预定义的颜色,涵盖了主色、强调色、背景色等,方便在不同场景下使用。
1. 示例颜色
Rosewater
Flamingo
Pink
Mauve
Red
Maroon
Peach
Yellow
Green
Teal
Sky
Sapphire
Blue
Lavender
2. 应用颜色
在实际应用中,可以根据需求选择适合的颜色。例如:
数据系列:为不同的数据系列选择不同的主色,确保图表的辨识度。 背景和网格:使用柔和的背景色和网格线颜色,减少对数据的干扰。 文本和标注:选择对比度适中的颜色,保证可读性。
四、优势与应用场景
提升图表美观度:Catppuccin的配色方案经过精心设计,能够使得图表看起来更加专业和美观,给观众留下良好的视觉印象。
减轻视觉疲劳:柔和的色彩有助于减轻长时间观看图表带来的视觉疲劳,特别是在数据分析和报告展示中。
统一的视觉风格:在项目中统一使用Catppuccin的配色,可以保持视觉风格的一致性,提升整体的专业性。
适用于多种领域:无论是学术研究、商业报告还是数据科学项目,Catppuccin的配色都能很好地适应,满足不同领域的需求。
五、注意事项
兼容性:确保您使用的Matplotlib或其他绘图库版本与Catppuccin样式库兼容。 自定义调整:虽然Catppuccin提供了默认的配色,但根据实际需求,可能需要进行一些自定义调整。 版权和许可:Catppuccin通常遵循MIT许可证,使用时请注意遵守相关的版权规定。
六、matplotlib美化的示例
让我们先生成一些合成数据。我决定使用每个库制作 4 个子图,这样您就可以在同一种数据上进行比较。下面是关键代码:
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import seaborn as sns
def scatter():
x = np.random.random(100)
y = x-np.random.random(100)
z = np.random.randint(0,4,100)
df = pd.DataFrame({'X':x, 'Y': y, 'Z':z})
return df
def line():
x = np.arange(0,10,0.1)
y_1 = np.sin(x)
y_2 = np.sin(x+5)
y_3 = np.sin(x+10)
y_4 = np.sin(x+15)
y_5 = np.sin(x+20)
df = pd.DataFrame({'X':x,'y_1':y_1, 'y_2':y_2, 'y_3':y_3, 'y_4':y_4, 'y_5':y_5})
return df
def hist():
x_1 = np.random.normal(1,0.1,1000)
x_2 = np.random.gamma(1,0.25,1000)
x_3 = np.random.normal(0.4, 0.1,1000)
x_4 = np.random.normal(-0.1, 0.3,1000)
df = pd.DataFrame({'X_1': x_1, 'X_2':x_2, 'X_3': x_3, 'X_4':x_4})
return df
调用这几个函数,就能得到传统样式的图表:
导入Catppuccin,再次调用函数进行绘图,就得到
🌟关于该实验的完整代码🌟
首先非常感谢朋友们对我的文章和公众号的支持!非常高兴能和大家分享一些文献和机器学习相关信息。如果你觉得这篇文章对你有帮助,并对完整的代码感兴趣,两步就可以得到这份代码啦:1)将我的公众号文章(任一)分享到朋友圈,并收集到10个赞;2)完成后,请将分享截图后台私信给我想要的代码并留下邮箱,后续将发送完整的实验代码给您作为感谢。
这样不仅可以帮助更多的人获得有价值的信息,也能鼓励我继续创作出更多优质内容。感谢你的支持与理解,期待你的截图哦!😊
声明:本公众号分享的前沿学术成果来源于各学术网站,不依法享有其所有权。若原作者发现本次分享中的文字及图片涉及侵权,请立刻联系公众号后台或发送邮件,我们将及时修改或删除!
邮箱:environmodel@sina.com
若您认为有用,欢迎
将Environmodel设为星标,或
点击“在看”或“分享”给他人