小编Dan*_*ick的帖子

有没有一种干净的方法来生成Python中的线性直方图?

我需要创建一个绘制直线而不是步长或条形图的直方图.我正在使用python 2.7下面的plt.hist函数绘制了一条阶梯线,并且这些分箱在plt.plot函数中没有排列.

import matplotlib.pyplot as plt
import numpy as np
noise = np.random.normal(0,1,(1000,1))
(n,x,_) = plt.hist(noise, bins = np.linspace(-3,3,7), histtype=u'step' )  
plt.plot(x[:-1],n)
Run Code Online (Sandbox Code Playgroud)

我需要该行与bin中心的每个bin的计数相关联,就好像有一个histt​​ype = u'line'标志与align = u'mid'标志一起去

python plot histogram

12
推荐指数
3
解决办法
3万
查看次数

Jupyter笔记本内联图像中的光标位置和像素值

我正在使用带有Jupyter Notebook的Python 2.7.x,matplotlib和%pylab后端以及内联标志 %pylab inline 来打印活动单元格下方的图像.我希望能够将光标移动到图像上并知道它的位置和像素值一个例子可能是:(x,y,val)=(123,285,230)但我并不特别关注这个例子的任何细节.

python matplotlib

11
推荐指数
2
解决办法
5044
查看次数

Python-OpenCV扩展和侵蚀函数不会修改任何东西

鉴于下面的代码,python中的cv2.dilate和cv2.erode函数返回我发送给它的相同图像.我究竟做错了什么?我正在使用OpenCV3.0.0.和iPython 2.7上的numpy1.9.0

im = np.zeros((100,100), dtype=np.uint8)
im[50:,50:] = 255
dilated = cv2.dilate(im, (11,11))
print np.array_equal(im, dilated)
Run Code Online (Sandbox Code Playgroud)

哪个回报:

True
Run Code Online (Sandbox Code Playgroud)

{Edited}另一个扩展帖子代表了内核数据类型的问题.这篇文章实际上反映了函数调用错误.

python opencv

8
推荐指数
1
解决办法
1万
查看次数

Atom 运行 Hydrogen Package - 没有可用的内省

我在 MacOS 上的 Atom 中运行 Python3。在 Atom 内部,我可以运行 Hydrogen 包,我可以使用切换检查器来提取某些函数(如排序和枚举)的文档字符串,但对于许多其他内置和导入函数,如appendand insert,我得到一个No Introspection Available错误。文档字符串可用的函数似乎都是海蓝色的,而所有其他函数都是蓝色的。如何获取所有函数的文档字符串?

注意:我将此添加到我的 keymap.cson 但我仍然遇到相同的错误

 'atom-text-editor:not([mini])':
  'shift-tab': 'hydrogen:toggle-inspector'
Run Code Online (Sandbox Code Playgroud)

python ipython atom-editor jupyter hydrogen

6
推荐指数
0
解决办法
105
查看次数

如何从字典中获取排名列表?

我在Python工作.我的字典看起来像这样:

score = {'a':{4:'c', 3:'d'}, 'b':{6:'c', 3:'d'}}
Run Code Online (Sandbox Code Playgroud)

我需要这样订购:

rank = [{a:3, b:6}, {a:4, b:3}]
Run Code Online (Sandbox Code Playgroud)

在具有排他键值的最大组合的子字典在第一元素中的情况下,排他键值的第二最大组合在第二元素中,依此类推.最大的组合逻辑是:1.从每个字典中获取最大组合键(总和)(在这种情况下,它将是a-> 4:'c'和b-> 6:'d'.删除这些值从字典中获取下一个最大的键组合(在这种情况下,它将是a-> 4:'c'和b-> 3:'d').这应该持续到原始字典为空.

它是独占的,因为一旦从原始字典中使用了一次值,就应将其删除,或排除在以后的任何组合中再次使用.

我尝试过所有我认识的不同方法,但从算法上来说,我错过了一些东西.

python dictionary

5
推荐指数
1
解决办法
96
查看次数

Python min/max的关键字函数

我试图了解这是如何工作的:

my_dict = {'a':2,'b':1}
min(my_dict, key=my_dict.get)
Run Code Online (Sandbox Code Playgroud)

产生

b
Run Code Online (Sandbox Code Playgroud)

这是一个非常酷的功能,我想要更好地理解.
根据文档

min(iterable [,key])返回可迭代中的最小项或两个或多个参数中的最小值...可选的key参数指定一个单参数排序函数,类似于list.sort().键参数(如果提供)必须采用关键字形式(例如,min(a,b,c,key = func)).

我在哪里可以找到有关可用功能的更多信息?在字典的情况下,是否所有字典方法?

编辑:我今天遇到过这个:

max(enumerate(array_x), key=operator.itemgetter(1))
Run Code Online (Sandbox Code Playgroud)

仍在寻找有关min/max的可用关键字函数的信息

python key min

5
推荐指数
1
解决办法
5559
查看次数

在数据边界寻找峰值

我想使用 scipy.signal.find_peaks 来查找某些 2D 数据中的峰值,但该函数默认忽略所有边缘峰值(出现在数组左侧或右侧边界上的峰值)。有没有办法在结果中包含边缘峰值?

例如,我想要这个代码:

find_peaks([5,4,3,3,2,3])
Run Code Online (Sandbox Code Playgroud)

生产

[0,5]
Run Code Online (Sandbox Code Playgroud)

而是它产生

[]
Run Code Online (Sandbox Code Playgroud)

python numpy scipy

5
推荐指数
1
解决办法
821
查看次数

导入错误:libstdc++.so.6:未找到版本“GLIBCXX_3.4.20”

我正在尝试从 tesseract-ocr 为 python 安装 tesseract 绑定,但安装后出现以下错误:

----> 1 import tesserocr
      2 
ImportError: /home/dsgoodri/anaconda2/lib/python2.7/site-packages/zmq/backend/cython/../../../../.././libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/libtesseract.so.3)
Run Code Online (Sandbox Code Playgroud)

我在这里使用了存储库:https : //pypi.python.org/pypi/tesserocr 我在 Ubuntu 16.04LTS 上使用 anaconda for Python 2.7。我该如何解决这个问题?

python gcc

4
推荐指数
1
解决办法
7502
查看次数

Matplotlib AttributeError:'NoneType'对象没有属性'seq'

我正在尝试绘制条形图并将标签附加到每个条形图。我可以使用以下代码绘制图表:

y = np.array([ 0.06590843,  0.10032079,  0.03295421,  0.12277632,  0.04257801,
        0.00641586,  0.05774278,  0.15106445,  0.13852435,  0.03732867,
        0.05570137,  0.11548556,  0.22834646,  0.09477982,  0.12569262,
        0.09711286,  0.05920093,  0.03295421,  0.11286089,  0.05453485,
        0.08486439,  0.09857101,  0.00641586])
x= ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '20', '40', '60', '80', '100', '300', '500', '700', '900', '1000', '1300', '1512']
plt.figure(figsize = (16, 2))
plt.bar(range(23), y)
Run Code Online (Sandbox Code Playgroud)

但是当我尝试添加标签时:

plt.xticks(x)
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

AttributeError: 'NoneType' object has no attribute 'seq'
Run Code Online (Sandbox Code Playgroud)

如果我做:

plt.bar(x, y)
Run Code Online (Sandbox Code Playgroud)

x标签变得混乱,我得到这样的数字: 在此处输入图片说明

我在后端使用%matplotlib内联。

bar-chart

2
推荐指数
1
解决办法
7304
查看次数