2016-11-25 162 views
-1

删除空白我有以下代码:周围图像matplotlib蟒蛇

def output(pixels): 
    plt.imshow(np.reshape(test1, (450, 450), order='F'), cmap=cm.gray) 
    for p in range(0,len(pixels),4): 
     row1 = pixels[p] 
     col1 = pixels[p+1] 
     row2 = pixels[p+2] 
     col2 = pixels[p+3] 
     y = np.linspace(row1,row2,10) 
     x = np.linspace(col1,col2,10) 
     plt.plot(x, y, color='yellow') 

它正确地输出,但是我留下了大量的图像和我想要删除的轴之间的空白的我。 任何非常感谢的帮助,谢谢

+1

创建工作示例(有一些数据),这样我们就可以运行它,看看这个空间。 – furas

回答

1

可能你需要一个loglog图?

例如,如果您使用简单的情节。

进口numpy的为NP 进口matplotlib.pyplot如PLT

def output(pixels): 
    test1 = np.arange(450*450) 
    plt.imshow(np.reshape(test1, (450, 450), order='F'), cmap='RdGy') 
    for p in range(0,len(pixels),4): 
     row1 = pixels[p] 
     col1 = pixels[p+1] 
     row2 = pixels[p+2] 
     col2 = pixels[p+3] 
     y = np.linspace(row1,row2,10) 
     x = np.linspace(col1,col2,10) 
     plt.plot(x, y, color='yellow') 


pixels = np.arange(128*128) 
output(pixels) 

simple plot

但是,如果使用双对数轴。

import numpy as np 
import matplotlib.pyplot as plt 


def output(pixels): 
    test1 = np.arange(450*450) 
    plt.imshow(np.reshape(test1, (450, 450), order='F'), cmap='RdGy') 
    for p in range(0,len(pixels),4): 
     row1 = pixels[p] 
     col1 = pixels[p+1] 
     row2 = pixels[p+2] 
     col2 = pixels[p+3] 
     y = np.linspace(row1,row2,10) 
     x = np.linspace(col1,col2,10) 
     plt.loglog(x, y, color='yellow') 


pixels = np.arange(128*128) 
output(pixels) 

loglog plot

+0

感谢您的帮助,但出现此错误UserWarning:图像在非线性轴上不受支持。 warnings.warn(“非图像在非线性轴上不受支持。”) – JamzDe3rd

+0

你使用了什么,并得到了这个消息?你有没有用plt.loglog使用我的上面的代码?你使用了哪些数据用于像素和测试1? – George