前面我们掌握了N种常见的可视化图表,这些图表在日常的数据分析中非常有用。但是这些图表往往只是实用却并不美观,很难达到快速抓住人眼球的效果。
因此接下来将会分享一些优秀的可视化案例,以此提高个人的审美与代码水平。如果将这些优秀的可视化案例移植进自己的项目或分析报告中,那未尝不是一件好事呢。
这个系列也是在Best Python Chart Examples[1]的基础上进行二次创作的,以搬运为主。并对少部分错误进行了修改,也优化或重构了一些冗余复杂的代码。同时我也会持续地挖掘和分享更多优秀的可视化案例,因此该系列或许会一直处于更新中。
在本系列开始前,我先给大家分享下如何实现自定义字体。这是因为该系列用到了大量的自定义字体。
下载.ttf文件
现在很多网站都有免费的字体下载,只需要在搜索引擎上搜索相关的字体,下载到本地后解压即可,需要注意的是,一般解压包中包含多个字体,只需选择一款合适的并重新命名即可。
image-20240129162801662
image-20240129162909033
获取matplotlib的文件路径:
import matplotlib
print(matplotlib.matplotlib_fname())
image-20240129163037422
根据路径找到fonts/ttf
文件夹,将字体复制进去
Mac可通过快捷键
shift+command+G
快速调用文件路径
image-20240129163510347
修改matplotlibrc
文件
font.family
行,取消注释(即删除前面的#)。修改结果如下:
font.family: sans-serif
font.sans-serif
行,取消注释(即删除前面的#),并手动添加文件名称(Lobster Two)。修改结果如下:
Lobster Two, DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
axes.unicode_minus
行,取消注释(即删除前面的#),并把True改为False。修改结果如下:
axes.unicode_minus: False # use Unicode for the minus symbol rather than hyphen. See
# https://en.wikipedia.org/wiki/Plus_and_minus_signs#Character_codes
清除matplotlib缓冲目录
import matplotlib
print(matplotlib.get_cachedir())
image-20240129164519186
image-20240129164700635
重启Jupyter即可
这里再解释下为什么有的同学在绘图时无法使用中文,出现常见的报错信息
findfont: Font family ['SimHei'] not found. Falling back to DejaVu Sans.
,其实就是没有正确配置好自定义字体,只需要按照上述方法下载SimHei
字体并依次添加到fonts/ttf
文件夹、matplotlibrc
文件中即可。
接下来会逐一分享优秀的python可视化案例,在此之前先分享了如何自定义字体。
共勉~
[1]
Best Python Chart Examples: https://python-graph-gallery.com/best-python-chart-examples/