Plotnine

Hacker News Top 工具

摘要

Plotnine是一个基于图形语法的Python数据可视化包,提供类似于R语言ggplot2的API,用于创建可自定义的统计图表。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/06/23 10:42

# Plotnine 来源:https://plotnine.org/ ### Python 的图形语法 Plotnine 是一个基于图形语法的 Python 数据可视化包,图形语法是一套用于描述和构建图形的连贯系统。其语法类似于大获成功的 R 包 ggplot2 (https://ggplot2.tidyverse.org/)。 下面通过可视化 Anscombe 四重奏(Anscombe's Quartet)来探索 Plotnine 的特性并体验典型的工作流程——这四个数据集具有不同的分布,但描述性统计却几乎完全相同,它们可以说是数据可视化的最佳论据。右侧可以看到最终结果。 ### 快速上手 使用 Plotnine,你可以用一行代码创建即兴图表。 `` from plotnine import * from plotnine.data import anscombe_quartet ggplot(anscombe_quartet, aes(x="x", y="y")) + geom_point() `` 数据包含两个连续变量,所以我们先绘制一个基本的散点图。 目前这张图意义不大;我们需要一种方法来区分四个数据集。 ### 合理的默认设置 图例、标签、刻度、调色板——许多元素会根据数据自动添加。 通过按所属数据集对每个点着色,图形会自动获得图例,颜色也是自动选择的。不过别担心,后面会看到一切都可以调整。 目前仍然比较混乱,让我们换一种方式。 ### 声明式分组 任何数据可视化都可以跨多个面板重复,而无需编写 for 循环。 这样好多了。面板划分使得颜色变得多余,所以我们需要调整这一点。 ### 可视化拥有图层 数据和列映射会被继承,但每个图层可以单独修改。 这些带有趋势线的散点图清晰地支持了 Anscombe 的观点:不同分布的数据集可能具有相同的描述性统计。 在做探索性数据分析时,这张图可能已经足够;但若要发布,你可能希望进一步自定义。 ### 覆盖任何默认设置 你看到的任何元素都可以调整。 `` ( ggplot(anscombe_quartet, aes("x", "y")) + geom_point(color="sienna", fill="darkorange", size=3) + geom_smooth(method="lm", se=False, fullrange=True, color="steelblue", size=1) + facet_wrap("dataset") + scale_y_continuous(breaks=(4, 8, 12)) + coord_fixed(xlim=(3, 22), ylim=(2, 14)) + labs(title="Anscombe's Quartet") ) `` 这里我们更改了大小和颜色,优化了刻度,并添加了标题。 ### Plotnine 的终极自定义 最后,自定义主题以匹配你的个人风格或组织品牌。 `` ( ggplot(anscombe_quartet, aes("x", "y")) + geom_point(color="sienna", fill="orange", size=3) + geom_smooth(method="lm", se=False, fullrange=True, color="steelblue", size=1) + facet_wrap("dataset") + labs(title="Anscombe's Quartet") + scale_y_continuous(breaks=(4, 8, 12)) + coord_fixed(xlim=(3, 22), ylim=(2, 14)) + theme_tufte(base_family="Futura", base_size=16) + theme( axis_line=element_line(color="#4d4d4d"), axis_ticks_major=element_line(color="#00000000"), axis_title=element_blank(), panel_spacing=0.09, ) ) `` 至此,我们从一行代码开始,逐步改进并自定义了数据可视化。 想知道如何用自己的数据创建这类可视化吗?下一节我们将介绍如何安装 Plotnine。

相似文章

ggsql:面向 SQL 的图形语法

Lobsters Hottest

ggsql 是一款 Alpha 版本工具,它将图形语法的可视化能力引入 SQL,允许用户在 Quarto、Jupyter、Positron 和 VS Code 中利用 SQL 语法构建结构化、模块化的可视化图表。

Tsplat – 在终端中运行高斯泼溅渲染

Hacker News Top

Tsplat 是一款基于 Rust 的命令行工具,仅使用 CPU 即可直接在终端中渲染 3D 高斯泼溅场景,甚至支持通过 SSH 运行。它支持 Unicode 半角块和图形协议,并具有导航和自动旋转控制。