我有以下代码: import matplotlib.pyplot as plt cdict = { 'red' : ( (0.0, 0.25, .25), (0.02, .59, .59), (1., 1., 1.)), 'green': ( (0.0, 0.0, 0.0), (0.02, .45, .45), (1., .97, .97)), 'blue' : ( (0.0, 1.0, 1.0), (0.02, .75, .75), (1., 0.45, 0.45)) } cm = m.colors.LinearSegmentedColormap('my_colormap', cdict, 1024) plt.clf() plt.pcolor(X, Y, v, cmap=cm) plt.loglog() […]
我试图用matplotlib读取RGB图像并将其转换为灰度。 在matlab中,我使用这个: img = rgb2gray(imread('image.png')); 在matplotlib教程中,他们没有涉及。 他们只是在图像中阅读 import matplotlib.image as mpimg img = mpimg.imread('image.png') 然后他们切片数组,但是这不是从我所了解的将RGB转换为灰度。 lum_img = img[:,:,0] 编辑: 我发现很难相信numpy或matplotlib没有内置函数来从rgb转换为灰色。 这不是image processing中的常见操作吗? 我写了一个非常简单的function,使用imread在5分钟内导入的图像。 这是非常低效的,但这就是为什么我希望内置专业实施。 塞巴斯蒂安改善了我的function,但我仍然希望find内置的一个。 matlab的(NTSC / PAL)实现: import numpy as np def rgb2gray(rgb): r, g, b = rgb[:,:,0], rgb[:,:,1], rgb[:,:,2] gray = 0.2989 * r + 0.5870 * g + 0.1140 * b return […]
我目前正在试图embedded一个图,我想绘制在我devise的pyqt4用户界面。 由于我对编程几乎是全新的 – 我不明白人们是如何embedded我发现的例子 – 这一个(底部)和那个例子。 如果任何人可以发布一步一步的解释,或者至less是一个非常小的,非常简单的代码,只需要在一个pyqt4 GUI中创build一个graphics和一个button,那就太棒了。
如何将第二个副图的y轴范围设置为[0,1000]? 我的数据(文本文件中的一列)的FFT图产生一个(inf。?)尖峰,以便实际的数据不可见。 pylab.ylim([0,1000]) 没有效果,不幸的是。 这是整个脚本: # based on http://www.swharden.com/blog/2009-01-21-signal-filtering-with-python/ import numpy, scipy, pylab, random xs = [] rawsignal = [] with open("test.dat", 'r') as f: for line in f: if line[0] != '#' and len(line) > 0: xs.append( int( line.split()[0] ) ) rawsignal.append( int( line.split()[1] ) ) h, w = 3, 1 pylab.figure(figsize=(12,9)) pylab.subplots_adjust(hspace=.7) pylab.subplot(h,w,1) […]
我需要你关于matplotlib的帮助。 是的,我没有忘记调用pyplot.show()。 $ ipython –pylab import matplotlib.pyplot as p p.plot(range(20), range(20)) 它返回matplotlib.lines.Line2D at 0xade2b2c作为输出。 p.show() 没有什么事情发生。 没有错误信息。 没有新窗口。 没有。 我通过使用pip来安装matplotlib ,但没有收到任何错误消息。 细节: 我用, Ubuntu的 IPython v0.11 Python v2.6.6 matplotlib v1.0.1
我想绘制Matplotlib中的隐式方程(forms为f(x,y)= g(x,y),例如X ^ y = y ^ x)。 这可能吗?
我想用matplotlib来绘制或多或less的下图所示的graphics,其中包括两个相交的平面,其中包含适量的透明度,指示它们的相对方位,以及在2D平面中投影的圆和vector。 我不确定是否有现成的软件包来做这个提示?
我有一个三元组列表,代表三维空间中的一组点。 我想绘制一个涵盖所有这些点的曲面。 mplot3d软件包中的plot_surface函数需要X,Y和Z二维数组。 plot_surface是绘制曲面的正确函数,如何将数据转换为所需的格式? data = [(x1,y1,z1),(x2,y2,z2),…..,(xn,yn,zn)]
我发现我可以用Python来绘制 : import matplotlib matplotlib.pyplot.plot(…) 要么: import pylab pylab.plot(…) 这两个使用相同的matplotlib绘图代码。 那么,Python社区推荐哪一种作为更好的绘图方法呢? 为什么?
我目前正在使用Matplotlib创build一个直方图: import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as pyplot … fig = pyplot.figure() ax = fig.add_subplot(1,1,1,) n, bins, patches = ax.hist(measurements, bins=50, range=(graph_minimum, graph_maximum), histtype='bar') #ax.set_xticklabels([n], rotation='vertical') for patch in patches: patch.set_facecolor('r') pyplot.title('Spam and Ham') pyplot.xlabel('Time (in seconds)') pyplot.ylabel('Bits of Ham') pyplot.savefig(output_filename) 我想让x轴标签更有意义。 首先,这里的x轴刻度似乎限于五个刻度。 不pipe我做什么,似乎都无法改变这一点 – 即使我添加了更多的xticklabels,它也只使用前五个。 我不确定Matplotlib如何计算这个值,但是我认为它是从范围/数据自动计算的? 有什么办法可以提高x-tick标签的分辨率 – 甚至是每个bar / bin一个点的分辨率 ? (理想情况下,我也希望秒数以毫秒/毫秒为单位进行重新格式化,但这是另一天的问题)。 其次,我希望每个单独的酒吧都标有这个垃圾箱的实际数量,以及所有垃圾箱的总数的百分比。 […]