Kotlin logo

Kotlin

A concise multiplatform language developed by JetBrains

Ecosystem

Kandy:JetBrains 推出的新 Kotlin 绘图库

Read this post in other languages:

我们很高兴推出 Kandy,JetBrains 的新 Kotlin 绘图库。 它为创建各种图表提供了强大的新 DSL。 第一个公开预览版本已可供试用,欢迎您分享反馈和意见。

Kandy 文档

它的外观如何?

df.plot {
   points {
       x(xShot) { axis.name = "Horizontal Position (meters)" }
       y(yShot) { axis.name = "Vertical Position (meters)" }
       size = 8.5
       color(outcome) {
           scale = categorical(
               true to Color.GREEN, false to Color.RED
           )
           legend {
               name = "Outcome"
               breaksLabeled(true to "Goal", false to "Miss")
           }
       }
   }
   layout.title = "Penalty Shot Outcomes Analysis"
}

为什么推出 Kandy?

我们的 Kotlin 数据分析生态系统正在快速发展。 然而,我们此前一直缺少一块重要拼图:绘图工具。 因此,我们决定创建 Kandy,一个简单、符合语言习惯、可读、类型安全的绘图 DSL,与我们的其他工具(Kotlin DataFrameKotlin Notebook)深度集成。

在 Kotlin Notebook 中

要开始在 Notebook 中使用 Kandy,只需要添加 %use kandy 行,它将自动加载最新稳定版本的 Kandy,添加所有必要导入和绘图渲染。 图表使用 Swing 直接在 Notebook 单元输出中渲染,并且为交互式,您可以将鼠标悬停在绘图元素上查看工具提示。 绘图以自动主题显示。 它们也可以从输出中以可用格式保存(通过输出菜单)。

搭配 Kotlin DataFrame

Kandy 提供了 DataFrame 工作流的直接延续,为 DataFrame 添加了 .plot {} 扩展,DataFrame 是一种快速便捷的数据可视化方式。 此外,使用 Kotlin Notebook 或在 IntelliJ IDEA 中搭配 DataFrame 插件时,您可以使用自动生成的 DataFrame 扩展属性列,使绘图更加类型安全并防止错误拼写的列名称。

Kandy 支持什么类型的图表?

Kandy 提供了大量图表,包括最受欢迎的几种:

这还不是全部! 您可以在我们的示例库中看到 Kandy 图。

开始

现在就想尝试 Kandy 吗? 以下是快速入门和示例的链接: 

文档和演示

GitHub 仓库

发现 bug 了? 或者没有找到想要的图表类型或功能,又或者您有其他问题或建议。 请随时访问我们的 GitHub 问题页面,告诉我们有什么地方需要改进。

我们还邀请您加入 Kotlin Slack 中的 #datascience 频道(在此处获取邀请)。 在此频道中,您可以提问、参与讨论,以及获取有关新版本的通知。

让我们享受 Kotlin 并 #use_kandy!

本博文英文原作者:

image description

Discover more