【问题标题】:How to graph a function in Python using plotnine library如何使用 plotnine 库在 Python 中绘制函数图形
【发布时间】:2018-06-29 04:52:24
【问题描述】:

我是一个长期的 R 用户,最近过渡到 Python,我一直在尝试继承我使用 ggplot2 绘图的知识,因为它非常直观。 Plotnine 应该是最 ggplot2 风格的绘图库,我已经成功地用它重新创建了大多数图形,除了如何绘制常规函数。

在base R中,您可以轻松定义一个eq.,如so,将结果输入到stat_function()层,并设置图形的限制代替data arg.,并成功绘制抛物线等。但是,在 Python 中设置图形限制的语法必须不同(可能使用 numpy?),并且使用 sympy 定义方程,这对我来说是另一个分歧。

那么我将如何使用 plotnine 绘制函数呢?以上两个障碍是我认为给我带来麻烦的与 ggplot2 的两个不同之处,因为 plotnine 网上的例子太少了。

附:这是我想在 Python 中使用 plotnine 重新创建的示例:

> library(ggplot2)
> basic_plot <- function(x) x^2 + 2.5
> graph <- ggplot(data.frame(x=c(-5,5)), aes(x=x)) +
+ stat_function(fun = basic_plot)
> graph

【问题讨论】:

标签: python r plot ggplot2 plotnine


【解决方案1】:

您不需要 numpy,它以“标准”方式工作得很好! :)

from plotnine import *
import pandas as pd

(ggplot(pd.DataFrame(data={"x": [-5, 5]}), aes(x="x"))
    + stat_function(fun=lambda x: x**2+2.5))

【讨论】:

    【解决方案2】:

    导致我遇到问题的主要区别之一与问题中发布的相同。具体来说:

    在 R 中 aes(x = x) 或 aes(x)

    在情节九 aes(x = 'x')

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-03
      • 2018-05-18
      • 2011-01-04
      • 2011-01-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多