【问题标题】:How to plot a scatter diagram using rpy2 in python?如何在python中使用rpy2绘制散点图?
【发布时间】:2013-05-12 11:29:45
【问题描述】:

我有一个字典格式的数据集,如下所示,

data={'a': [10, 11,12,5,4,3,1], 'b': [7, 18,5,11,9,2,0]} 

我们如何使用 rpy2 在 python 中制作散点图? x 轴是月份,y 轴是 5 的倍数?我们需要用上面的值绘制图形,其中 a 和 b 是数据点

Months should be based on the length of each key i.e for the above data we have 7 months since we have 7 data points

【问题讨论】:

  • @Noah 如何为以上数据点绘制折线图
  • 这样的? harding.edu/fmccown/r
  • 我不确定您编辑的问题中的 ab 是什么 -- x 轴和 y 轴值?

标签: python-2.7 rpy2


【解决方案1】:

这是一个相当复杂的数据结构,在绘图方面您要做什么并不完全清楚。这里有一些提示,但如果您发布您尝试过但没有奏效的代码,最容易帮助您。

R plot 函数采用两个向量,对应于 x 轴值(此处为月份)和 y 轴值(频率?)。您将需要浏览您的 graph_data 字典并计算您想要为每个月绘制的 y 轴值,然后为包含月份数字的 x 创建一个相应的向量。例如:

x = [1,2,3,4]
y = [0.7, 0.9, 0.2, 0.4]

要从 rpy2 进行绘图,您需要将列表转换为向量,如下所示:

from rpy2 import robjects
x_vector = robjects.IntVector(x)
y_vector = robjects.FloatVector(y)

然后进行绘图:

robjects.r.plot(x_vector, y_vector, xlab="month", ylab="freq", main="")

【讨论】:

    猜你喜欢
    • 2020-09-14
    • 2018-06-23
    • 2011-05-07
    • 1970-01-01
    • 2016-03-19
    • 2023-03-15
    • 2022-10-02
    • 2020-09-24
    相关资源
    最近更新 更多