相关疑难解决方法(0)

Python3中的StringIO

我使用的是Python 3.2.1,我无法导入StringIO模块.我使用 io.StringIO和它的作品,但我不能使用它numpygenfromtxt是这样的:

x="1 3\n 4.5 8"        
numpy.genfromtxt(io.StringIO(x))
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

TypeError: Can't convert 'bytes' object to str implicitly  
Run Code Online (Sandbox Code Playgroud)

当我写import StringIO它时说

ImportError: No module named 'StringIO'
Run Code Online (Sandbox Code Playgroud)

python io python-3.x

407
推荐指数
7
解决办法
48万
查看次数

使用matplotlib.pyplot,imshow()和savefig()以全分辨率绘图?

我有一个中等大小的数组(例如1500x3000)我想要按比例绘制,因为它是一个图像.但是,垂直和水平刻度是非常不同的.为简化起见,假设有一米/行和10 /列.然后该图应该产生一个c的图像.1500x30000.我使用kwarg范围为scale和aspect = 1以避免变形.通过使用绘图窗口(QT4)和imshow()或使用savefig(),我从未成功地以大规模和全分辨率生成图像.

我看过很多提出的解决方案,如表示在这里,在这里,或在这里那里存在的情况下,这是一个错误.我已经改变了我的matplotlibrc并将其放在〜/ .config/matplotlib中以尝试强制我的display/savefig选项但无济于事.我也试过pcolormesh()但没有成功.我使用来自Ubuntu 14.04和QT4Agg的repo的python 2.7和matplotlib 1.3作为后端.我也尝试了TkAgg,但速度很慢并且给出了相同的结果.我的印象是,在x轴上分辨率是正确的,但它在垂直方向上肯定是下采样的.这是一段应该模拟我的问题的代码.

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.colors

R, C = 1500, 3000
DATA = np.random.random((R, C))
DATA[::2, :] *= -1  # make every other line negative
Yi, Xi = 1, 10 # increment
CMP = 'seismic'
ImageFormat ='pdf'
Name = 'Image'


DataRange = (np.absolute(DATA)).max() # I want my data centred on 0
EXTENT = [0, Xi*C, 0 ,Yi*R] …
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib imshow

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

标签 统计

python ×2

imshow ×1

io ×1

matplotlib ×1

plot ×1

python-3.x ×1