Questions tagged «matplotlib»

Matplotlib是Python的绘图库,可以交互使用或嵌入独立的GUI中。其紧凑的“ pyplot”界面类似于MATLAB®的绘图功能。

12
未定义DISPLAY时,使用matplotlib生成PNG
我正在尝试将networkx与Python结合使用。当我运行该程序时,出现此错误。缺少什么吗? #!/usr/bin/env python import networkx as nx import matplotlib import matplotlib.pyplot import matplotlib.pyplot as plt G=nx.Graph() G.add_node(1) G.add_nodes_from([2,3,4,5,6,7,8,9,10]) #nx.draw_graphviz(G) #nx_write_dot(G, 'node.png') nx.draw(G) plt.savefig("/var/www/node.png") Traceback (most recent call last): File "graph.py", line 13, in <module> nx.draw(G) File "/usr/lib/pymodules/python2.5/networkx/drawing/nx_pylab.py", line 124, in draw cf=pylab.gcf() File "/usr/lib/pymodules/python2.5/matplotlib/pyplot.py", line 276, in gcf return figure() …
319 python  matplotlib  graph 

6
通过matplotlib中的许多子图来改善子图大小/间距
与这个问题非常相似,但不同之处在于我的身材可以达到所需的大小。 我需要在matplotlib中生成一堆垂直堆叠的图。结果将使用figsave保存并在网页上查看,所以我不关心最终图像的高度,只要子图之间的间距不重叠即可。 不管我允许多大的身材,子图似乎总是重叠的。 我的代码目前看起来像 import matplotlib.pyplot as plt import my_other_module titles, x_lists, y_lists = my_other_module.get_data() fig = plt.figure(figsize=(10,60)) for i, y_list in enumerate(y_lists): plt.subplot(len(titles), 1, i) plt.xlabel("Some X label") plt.ylabel("Some Y label") plt.title(titles[i]) plt.plot(x_lists[i],y_list) fig.savefig('out.png', dpi=100)
313 python  matplotlib 

13
在python matplotlib中旋转轴文本
我不知道如何在X轴上旋转文本。这是一个时间戳记,因此随着样本数量的增加,它们越来越近,直到它们重叠。我想将文本旋转90度,以使样本靠得更近,它们不会重叠。 下面是我所拥有的,除了我不知道如何旋转X轴文本外,它可以正常工作。 import sys import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt import datetime font = {'family' : 'normal', 'weight' : 'bold', 'size' : 8} matplotlib.rc('font', **font) values = open('stats.csv', 'r').readlines() time = [datetime.datetime.fromtimestamp(float(i.split(',')[0].strip())) for i in values[1:]] delay = [float(i.split(',')[1].strip()) for i in values[1:]] plt.plot(time, delay) plt.grid(b='on') plt.savefig('test.png')
313 python  matplotlib 

6
为什么在matplotlib图中我的xlabel被截断了?
我正在使用matplotlib具有“很高”的xlabel的位置绘制数据集(这是在TeX中渲染的公式,其中包含一个分数,因此其高度等于几行文本)。 无论如何,当我绘制数字时,公式的底部总是被切除。更改图形大小似乎无济于事,而且我还无法弄清楚如何将x轴“向上”移动以为xlabel腾出空间。诸如此类的东西是一个合理的临时解决方案,但最好的办法是使matplotlib自动识别标签已被剪切并相应地调整大小。 这是我的意思的示例: import matplotlib.pyplot as plt plt.figure() plt.ylabel(r'$\ln\left(\frac{x_a-x_b}{x_a-x_c}\right)$') plt.xlabel(r'$\ln\left(\frac{x_a-x_d}{x_a-x_e}\right)$') plt.show() 虽然您可以看到整个ylabel,但xlabel在底部被切除了。 如果这是机器特定的问题,我将在带有matplotlib 1.0.0的OSX 10.6.8上运行此问题
302 python  matplotlib 


9
删除matplotlib图中的xticks?
我有一个Semilogx图,我想删除xticks。我试过了: plt.gca().set_xticks([]) plt.xticks([]) ax.set_xticks([]) 网格消失(确定),但仍保留小刻度线(在主刻度线的位置)。如何删除它们?
290 python  matplotlib  plot 

6
用twinx()辅助轴:如何添加到图例?
我有一个使用两个y轴的图twinx()。我还给行加了标签,并想用显示legend(),但我仅成功获得了图例中一个轴的标签: import numpy as np import matplotlib.pyplot as plt from matplotlib import rc rc('mathtext', default='regular') fig = plt.figure() ax = fig.add_subplot(111) ax.plot(time, Swdown, '-', label = 'Swdown') ax.plot(time, Rn, '-', label = 'Rn') ax2 = ax.twinx() ax2.plot(time, temp, '-r', label = 'temp') ax.legend(loc=0) ax.grid() ax.set_xlabel("Time (h)") ax.set_ylabel(r"Radiation ($MJ\,m^{-2}\,d^{-1}$)") ax2.set_ylabel(r"Temperature ($^\circ$C)") …


11
Matplotlib图:删除轴,图例和空白
我是Python和Matplotlib的新手,我想简单地将colormap应用于图像并写入结果图像,而无需使用轴,标签,标题或通常由matplotlib自动添加的任何内容。这是我所做的: def make_image(inputname,outputname): data = mpimg.imread(inputname)[:,:,0] fig = plt.imshow(data) fig.set_cmap('hot') fig.axes.get_xaxis().set_visible(False) fig.axes.get_yaxis().set_visible(False) plt.savefig(outputname) 它成功删除了图形的轴,但是保存的图形在实际图像周围显示了白色填充和边框。如何删除它们(至少是白色填充)?谢谢
285 python  matplotlib 

5
Python,Matplotlib,子图:如何设置轴范围?
如何将第二个子图的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 …
266 python  range  axis  matplotlib 

9
在PyPlot中反转Y轴
我有一个带有一堆随机x,y坐标的散点图。当前,Y轴从0开始并上升到最大值。我希望Y轴从最大值开始,一直到0。 points = [(10,5), (5,11), (24,13), (7,8)] x_arr = [] y_arr = [] for x,y in points: x_arr.append(x) y_arr.append(y) plt.scatter(x_arr,y_arr)
265 python  matplotlib 

4
为什么很多示例在Matplotlib / pyplot / python中使用`fig,ax = plt.subplots()`
我正在matplotlib通过学习示例来学习使用方法,在创建单个图之前,很多示例似乎包含如下一行: fig, ax = plt.subplots() 这里有些例子... 修改刻度标签文本 http://matplotlib.org/examples/pylab_examples/boxplot_demo2.html 我看到此功能使用了很多,即使该示例仅尝试创建单个图表。还有其他优势吗?官方演示subplots()还在f, ax = subplots创建单个图表时使用,并且此后仅引用ax。这是他们使用的代码。 # Just a figure and one subplot f, ax = plt.subplots() ax.plot(x, y) ax.set_title('Simple plot')

7
以最简单的方式将图例添加到Matplotlib中的PyPlot
TL; DR->如何在不创建任何额外变量Matplotlib的PyPlot情况下为的线形图创建图例? 请考虑以下图形脚本: if __name__ == '__main__': PyPlot.plot(total_lengths, sort_times_bubble, 'b-', total_lengths, sort_times_ins, 'r-', total_lengths, sort_times_merge_r, 'g+', total_lengths, sort_times_merge_i, 'p-', ) PyPlot.title("Combined Statistics") PyPlot.xlabel("Length of list (number)") PyPlot.ylabel("Time taken (seconds)") PyPlot.show() 正如你所看到的,这是一个非常基本的使用matplotlib的PyPlot。理想情况下,生成如下图所示的图: 我知道没什么特别的。但是,尚不清楚在何处绘制哪些数据(我正在尝试绘制某些排序算法的数据,长度与所用时间的关系,并且我想确保人们知道哪条线是哪条)。因此,我需要一个图例,不过,请看下面的示例(来自官方网站): ax = subplot(1,1,1) p1, = ax.plot([1,2,3], label="line 1") p2, = ax.plot([3,2,1], label="line 2") p3, = ax.plot([2,3,1], label="line 3") …
263 python  matplotlib  plot 


4
matplotlib中的命名颜色
matplotlib中有哪些命名颜色可用于绘图中?我可以在matplotlib文档中找到一个列表,声称这些是唯一的名称: b: blue g: green r: red c: cyan m: magenta y: yellow k: black w: white 但是,我发现至少在这种情况下,也可以使用这些颜色: scatter(X,Y, color='red') scatter(X,Y, color='orange') scatter(X,Y, color='darkgreen') 但这些不在上面的列表中。有谁知道可用的命名颜色的详尽列表?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.