8

我正在尝试使用ipython notebookggplot for python在 python 中制作一个简单数字列表的直方图。使用 pylab,这很容易,但我无法让 ggplot 工作。

我正在使用此代码(基于对我有用的菱形直方图示例):

from ggplot import *
a = [1, 1, 2, 1, 1, 4, 5, 6]
p = ggplot(aes(x='carat'), data=a)
p + geom_hist() + ggtitle("Histogram of Diamond Carats") + labs("Carats", "Freq")

使用 ipython 和 pylab,我可以用 just 制作直方图hist(a)并显示。如何使用 ggplot 制作直方图?

4

2 回答 2

17

如果您只想制作向量“a”中数字的直方图,则存在几个问题。

首先,ggplot 接受 pandas Dataframe 形式的数据,因此您需要先构建它。

import pandas as pd
a = [1, 1, 2, 1, 1, 4, 5, 6]
df = pd.DataFrame(a, columns=['a'])

其次,geomgeom_histogram()不是geom_hist(). 最后,看起来您正在从菱形数据的示例图中输入代码。你不需要那个,所以我把它删除了。

from ggplot import *
p = ggplot(aes(x='a'), data=df)
p + geom_histogram(binwidth=1)

在此处输入图像描述

于 2013-10-29T17:32:34.433 回答
8

你加了吗

%matplotlib inline

作为笔记本中的第一个命令?

于 2014-01-26T14:25:18.130 回答