`matplotlib`如何调整图形大小?

时间:2017-05-17 20:16:55

标签: python numpy matplotlib plot librosa

matplotlib如何确保数据集可以在指定大小的绘图中。

如何从存储为numpy的绘图中,如何在绘图中读取像素图的颜色数据点(0,4)。

示例:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from PIL import Image
import librosa
import librosa.display
from matplotlib import cm


fig = plt.figure(figsize=(12,4))
min = -1.828067
max = 22.70058
data =  np.random.uniform(low=min, high=max, size=(474,40))
librosa.display.specshow(data.T,sr=16000,x_axis='frames',y_axis='mel',hop_length=160,cmap=cm.jet)
plt.show()
raw_input("sadas")

convert = plt.get_cmap(cm.jet)
numpy_output_static = convert(data.T)
plt.imshow(numpy_output_static, aspect = 'auto')
plt.show()
raw_input("asds")

第一个情节是:

enter image description here

第二个情节是:

enter image description here

所以第一个已经调整为大小为12,4,其中最后一个基本上绘制了相同的数据,但只是使用数据形状作为大小......我该如何改变它?

Librosa只根据GitHub source code

执行pcolormesh

1 个答案:

答案 0 :(得分:0)

你需要为第二个数字定义另一个具有自己大小的数字。

import numpy as np
import matplotlib.pyplot as plt
import matplotlib
from PIL import Image
import librosa
import librosa.display
from matplotlib import cm


fig = plt.figure(figsize=(12,4))
min = -1.828067
max = 22.70058
data =  np.random.uniform(low=min, high=max, size=(474,40))
librosa.display.specshow(data.T,sr=16000,x_axis='frames',y_axis='mel',hop_length=160,cmap=cm.jet)
plt.show()
raw_input("sadas")

convert = plt.get_cmap(cm.jet)
numpy_output_static = convert(data.T)

fig = plt.figure(figsize=(12,4))
plt.imshow(numpy_output_static, aspect = 'auto')
plt.show()
raw_input("asds")
相关问题