本文整理汇总了Python中matplotlib.figure.Figure.show方法的典型用法代码示例。如果您正苦于以下问题:Python Figure.show方法的具体用法?Python Figure.show怎么用?Python Figure.show使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类matplotlib.figure.Figure
的用法示例。
在下文中一共展示了Figure.show方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: plot_correlation
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_correlation(hist, title="Hit correlation", xlabel=None, ylabel=None, filename=None):
logging.info("Plotting correlations")
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(1, 1, 1)
cmap = cm.get_cmap('jet')
extent = [hist[2][0] - 0.5, hist[2][-1] + 0.5, hist[1][-1] + 0.5, hist[1][0] - 0.5]
ax.set_title(title)
ax.set_xlabel(xlabel)
ax.set_ylabel(ylabel)
im = ax.imshow(hist[0], extent=extent, cmap=cmap, interpolation='nearest')
ax.invert_yaxis()
# add colorbar
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.05)
z_max = np.max(hist[0])
bounds = np.linspace(start=0, stop=z_max, num=255, endpoint=True)
norm = colors.BoundaryNorm(bounds, cmap.N)
fig.colorbar(im, boundaries=bounds, cmap=cmap, norm=norm, ticks=np.linspace(start=0, stop=z_max, num=9, endpoint=True), cax=cax)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例2: plot_tdc_event
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_tdc_event(points, filename=None):
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111, projection='3d')
xs = points[:, 0]
ys = points[:, 1]
zs = points[:, 2]
cs = points[:, 3]
p = ax.scatter(xs, ys, zs, c=cs, s=points[:, 3] ** (2) / 5., marker='o')
ax.set_xlabel('x [250 um]')
ax.set_ylabel('y [50 um]')
ax.set_zlabel('t [25 ns]')
ax.title('Track of one TPC event')
ax.set_xlim(0, 80)
ax.set_ylim(0, 336)
c_bar = fig.colorbar(p)
c_bar.set_label('charge [TOT]')
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
elif filename:
fig.savefig(filename)
return fig
示例3: plot_scatter
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_scatter(x, y, x_err=None, y_err=None, title=None, legend=None, plot_range=None, plot_range_y=None, x_label=None, y_label=None, marker_style='-o', log_x=False, log_y=False, filename=None):
logging.info('Plot scatter plot %s', (': ' + title) if title is not None else '')
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
if x_err is not None:
x_err = [x_err, x_err]
if y_err is not None:
y_err = [y_err, y_err]
if x_err is not None or y_err is not None:
ax.errorbar(x, y, xerr=x_err, yerr=y_err, fmt=marker_style)
else:
ax.plot(x, y, marker_style, markersize=1)
ax.set_title(title)
if x_label is not None:
ax.set_xlabel(x_label)
if y_label is not None:
ax.set_ylabel(y_label)
if log_x:
ax.set_xscale('log')
if log_y:
ax.set_yscale('log')
if plot_range:
ax.set_xlim((min(plot_range), max(plot_range)))
if plot_range_y:
ax.set_ylim((min(plot_range_y), max(plot_range_y)))
if legend:
ax.legend(legend, 0)
ax.grid(True)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例4: plot_cluster_tot_size
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_cluster_tot_size(hist, median=False, z_max=None, filename=None):
H = hist[0:50, 0:20]
if z_max is None:
z_max = np.ma.max(H)
if z_max < 1 or H.all() is np.ma.masked:
z_max = 1
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
extent = [-0.5, 20.5, 49.5, -0.5]
bounds = np.linspace(start=0, stop=z_max, num=255, endpoint=True)
cmap = cm.get_cmap('jet')
cmap.set_bad('w')
norm = colors.BoundaryNorm(bounds, cmap.N)
im = ax.imshow(H, aspect="auto", interpolation='nearest', cmap=cmap, norm=norm, extent=extent) # for monitoring
ax.set_title('Cluster size and cluster ToT (' + str(np.sum(H) / 2) + ' entries)')
ax.set_xlabel('cluster size')
ax.set_ylabel('cluster ToT')
ax.invert_yaxis()
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.1)
cb = fig.colorbar(im, cax=cax, ticks=np.linspace(start=0, stop=z_max, num=9, endpoint=True))
cb.set_label("#")
fig.patch.set_facecolor('white')
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例5: plot_scatter_time
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_scatter_time(x, y, yerr=None, title=None, legend=None, plot_range=None, plot_range_y=None, x_label=None, y_label=None, marker_style='-o', log_x=False, log_y=False, filename=None):
logging.info("Plot time scatter plot %s", (': ' + title) if title is not None else '')
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
ax.format_xdata = mdates.DateFormatter('%Y-%m-%d')
times = []
for time in x:
times.append(datetime.fromtimestamp(time))
if yerr is not None:
ax.errorbar(times, y, yerr=[yerr, yerr], fmt=marker_style)
else:
ax.plot(times, y, marker_style)
ax.set_title(title)
if x_label is not None:
ax.set_xlabel(x_label)
if y_label is not None:
ax.set_ylabel(y_label)
if log_x:
ax.xscale('log')
if log_y:
ax.yscale('log')
if plot_range:
ax.set_xlim((min(plot_range), max(plot_range)))
if plot_range_y:
ax.set_ylim((min(plot_range_y), max(plot_range_y)))
if legend:
ax.legend(legend, 0)
ax.grid(True)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例6: plot_1d_hist
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_1d_hist(hist, yerr=None, title=None, x_axis_title=None, y_axis_title=None, x_ticks=None, color='r', plot_range=None, log_y=False, filename=None, figure_name=None):
logging.info('Plot 1d histogram%s', (': ' + title) if title is not None else '')
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
if plot_range is None:
plot_range = range(0, len(hist))
if not plot_range:
plot_range = [0]
if yerr is not None:
ax.bar(left=plot_range, height=hist[plot_range], color=color, align='center', yerr=yerr)
else:
ax.bar(left=plot_range, height=hist[plot_range], color=color, align='center')
ax.set_xlim((min(plot_range) - 0.5, max(plot_range) + 0.5))
ax.set_title(title)
if x_axis_title is not None:
ax.set_xlabel(x_axis_title)
if y_axis_title is not None:
ax.set_ylabel(y_axis_title)
if x_ticks is not None:
ax.set_xticks(range(0, len(hist[:])) if plot_range is None else plot_range)
ax.set_xticklabels(x_ticks)
ax.tick_params(which='both', labelsize=8)
if np.allclose(hist, 0.0):
ax.set_ylim((0, 1))
else:
if log_y:
ax.set_yscale('log')
ax.grid(True)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例7: MatplotlibWidget
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
class MatplotlibWidget(FigureCanvas):
def __init__(self, parent=None):
super(MatplotlibWidget, self).__init__(Figure())
#self.hide()
self.setParent(parent)
self.figure = Figure()
self.canvas = FigureCanvas(self.figure)
self.ax = self.figure.add_subplot(111)
self.ax.yaxis.grid(color='gray', linestyle='dashed')
def add_plot_line(self, x, y):
self.ax.plot(x, y, 'r')
def add_legend(self, list):
#list of strings like "X1 = blaghlbah"
self.figure.legend([x for x in list], loc='upper left')
def draw_graph(self):
self.figure.draw()
def show_graph(self):
self.figure.show()
def plot_bar_graph(self):
pass
示例8: plotThreeWay
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plotThreeWay(hist, title, filename=None, x_axis_title=None, minimum=None, maximum=None, bins=101): # the famous 3 way plot (enhanced)
if minimum is None:
minimum = 0
elif minimum == 'minimum':
minimum = np.ma.min(hist)
if maximum == 'median' or maximum is None:
median = np.ma.median(hist)
maximum = median * 2 # round_to_multiple(median * 2, math.floor(math.log10(median * 2)))
elif maximum == 'maximum':
maximum = np.ma.max(hist)
maximum = maximum # round_to_multiple(maximum, math.floor(math.log10(maximum)))
if maximum < 1 or hist.all() is np.ma.masked:
maximum = 1
x_axis_title = '' if x_axis_title is None else x_axis_title
fig = Figure()
FigureCanvas(fig)
fig.patch.set_facecolor('white')
ax1 = fig.add_subplot(311)
create_2d_pixel_hist(fig, ax1, hist, title=title, x_axis_title="column", y_axis_title="row", z_min=minimum if minimum else 0, z_max=maximum)
ax2 = fig.add_subplot(312)
create_1d_hist(fig, ax2, hist, bins=bins, x_axis_title=x_axis_title, y_axis_title="#", x_min=minimum, x_max=maximum)
ax3 = fig.add_subplot(313)
create_pixel_scatter_plot(fig, ax3, hist, x_axis_title="channel=row + column*336", y_axis_title=x_axis_title, y_min=minimum, y_max=maximum)
fig.tight_layout()
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例9: PlotFigure
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
class PlotFigure(wx.Frame):
def __init__(self, title='Pyception results'): #, style=wx.DEFAULT_FRAME_STYLE|wx.STAY_ON_TOP):
#def __init__(self,title='Pyception Lab', pos=None, size=wx.DefaultSize, style=wx.DEFAULT_DIALOG_STYLE|wx.DIALOG_NO_PARENT):
Frame.__init__(self, None, -1, title, style=wx.STAY_ON_TOP|wx.RESIZE_BORDER) # style=wx.DEFAULT_FRAME_STYLE|wx.STAY_ON_TOP)
#try:
#wx.Dialog.__init__(self, None,-1,title)
#except:
#global app
#app = wx.PySimpleApp()
#wx.Dialog.__init__(self, None,-1,title)
#wx.Dialog.__init__(self, None,-1,title="Pyception results")
#style=style|wx.RESIZE_BORDER
#self.fig = Figure((9,8), 75)
self.fig = Figure()
self.canvas = FigCanvas(self, -1, self.fig)
#self.toolbar = Toolbar(self.canvas)
#self.toolbar.Realize()
# On Windows, default frame size behaviour is incorrect
# you don't need this under Linux
#tw, th = self.toolbar.GetSizeTuple()
#fw, fh = self.canvas.GetSizeTuple()
#self.toolbar.SetSize(Size(fw, th))
# Create a figure manager to manage things
self.figmgr = FigureManager(self.canvas, 1, self)
# Now put all into a sizer
sizer = BoxSizer(VERTICAL)
# This way of adding to sizer allows resizing
sizer.Add(self.canvas, 1, LEFT|TOP|GROW)
# Best to allow the toolbar to resize!
#sizer.Add(self.toolbar, 0, GROW)
btn = wx.Button(self, label='Close')
btn.Bind( wx.EVT_BUTTON, self.onClose)
sizer.Add(btn, 0, GROW)
self.SetSizer(sizer)
self.Fit()
def onClose(self, event):
self.eventLoop.Exit()
self.Close()
def ShowModal(self):
self.MakeModal()
self.fig.show()
self.Show()
self.eventLoop = wx.EventLoop()
self.eventLoop.Run()
示例10: plot_scurves
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_scurves(occupancy_hist, scan_parameters, title='S-Curves', ylabel='Occupancy', max_occ=None, scan_parameter_name=None, min_x=None, max_x=None, x_scale=1.0, y_scale=1., filename=None): # tornado plot
occ_mask = np.all(occupancy_hist == 0, axis=2)
if max_occ is None:
max_occ = 2 * np.median(np.amax(occupancy_hist, axis=2))
if np.allclose(max_occ, 0.0):
max_occ = np.amax(occupancy_hist)
if np.allclose(max_occ, 0.0):
max_occ = 1
if len(occupancy_hist.shape) < 3:
raise ValueError('Found array with shape %s' % str(occupancy_hist.shape))
n_pixel = occupancy_hist.shape[0] * occupancy_hist.shape[1]
cmap = cm.get_cmap('jet', 200)
for index, scan_parameter in enumerate(scan_parameters):
compressed_data = np.ma.masked_array(occupancy_hist[:, :, index], mask=occ_mask, copy=True).compressed()
heatmap, xedges, yedges = np.histogram2d(compressed_data, [scan_parameter] * compressed_data.shape[0], range=[[0, max_occ], [scan_parameters[0], scan_parameters[-1]]], bins=(max_occ + 1, len(scan_parameters)))
if index == 0:
hist = heatmap
else:
hist += heatmap
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
fig.patch.set_facecolor('white')
if len(scan_parameters) > 1:
scan_parameter_dist = (np.amax(scan_parameters) - np.amin(scan_parameters)) / (len(scan_parameters) - 1)
else:
scan_parameter_dist = 0
extent = [yedges[0] - scan_parameter_dist / 2, yedges[-1] * x_scale + scan_parameter_dist / 2, xedges[-1] * y_scale + 0.5, xedges[0] - 0.5]
norm = colors.LogNorm()
im = ax.imshow(hist, interpolation='nearest', aspect="auto", cmap=cmap, extent=extent, norm=norm)
ax.invert_yaxis()
if min_x is not None or max_x is not None:
ax.set_xlim((min_x if min_x is not None else np.amin(scan_parameters), max_x if max_x is not None else np.amax(scan_parameters)))
fig.colorbar(im)
ax.set_title(title + ' for %d pixel(s)' % (n_pixel - np.count_nonzero(occ_mask)))
if scan_parameter_name is None:
ax.set_xlabel('Scan parameter')
else:
ax.set_xlabel(scan_parameter_name)
ax.set_ylabel(ylabel)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例11: subplot_demo
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def subplot_demo():
f = Figure()
t = numpy.arange(0.0,3.0,0.01)
s1 = numpy.sin(2*numpy.pi*t)
s2 = numpy.zeros(t.shape, numpy.Float)
a1 = Subplot(211)
a1.plot(t,s1)
a1.set_title('And now for something completely different')
a2 = Subplot(212)
a2.plot(t,s2)
a2.set_xlabel('time (s)')
f.add_axis(a1)
f.add_axis(a2)
f.show()
示例12: plot_profile_histogram
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_profile_histogram(x, y, n_bins=100, title=None, x_label=None, y_label=None, log_y=False, filename=None):
'''Takes 2D point data (x,y) and creates a profile histogram similar to the TProfile in ROOT. It calculates
the y mean for every bin at the bin center and gives the y mean error as error bars.
Parameters
----------
x : array like
data x positions
y : array like
data y positions
n_bins : int
the number of bins used to create the histogram
'''
if len(x) != len(y):
raise ValueError('x and y dimensions have to be the same')
n, bin_edges = np.histogram(x, bins=n_bins) # needed to calculate the number of points per bin
sy = np.histogram(x, bins=n_bins, weights=y)[0] # the sum of the bin values
sy2 = np.histogram(x, bins=n_bins, weights=y * y)[0] # the quadratic sum of the bin values
bin_centers = (bin_edges[1:] + bin_edges[:-1]) / 2 # calculate the bin center for all bins
mean = sy / n # calculate the mean of all bins
std = np.sqrt((sy2 / n - mean * mean)) # TODO: no understood, need check if this is really the standard deviation
# std_mean = np.sqrt((sy2 - 2 * mean * sy + mean * mean) / (1*(n - 1))) # this should be the formular ?!
std_mean = std / np.sqrt((n - 1))
mean[np.isnan(mean)] = 0.
std_mean[np.isnan(std_mean)] = 0.
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
ax.errorbar(bin_centers, mean, yerr=std_mean, fmt='o')
ax.set_title(title)
if x_label is not None:
ax.set_xlabel(x_label)
if y_label is not None:
ax.set_ylabel(y_label)
if log_y:
ax.yscale('log')
ax.grid(True)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例13: plot_three_way
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_three_way(hist, title, filename=None, x_axis_title=None, minimum=None, maximum=None, bins=101, cmap=None): # the famous 3 way plot (enhanced)
if cmap is None:
if maximum == 'median' or maximum is None:
cmap = cm.get_cmap('coolwarm')
else:
cmap = cm.get_cmap('cool')
# TODO: set color for bad pixels
# set nan to special value
# masked_array = np.ma.array (a, mask=np.isnan(a))
# cmap = matplotlib.cm.jet
# cmap.set_bad('w',1.)
# ax.imshow(masked_array, interpolation='nearest', cmap=cmap)
if minimum is None:
minimum = 0.0
elif minimum == 'minimum':
minimum = np.ma.min(hist)
if maximum == 'median' or maximum is None:
maximum = 2 * np.ma.median(hist)
elif maximum == 'maximum':
maximum = np.ma.max(hist)
if maximum < 1 or hist.all() is np.ma.masked:
maximum = 1.0
x_axis_title = '' if x_axis_title is None else x_axis_title
fig = Figure()
FigureCanvas(fig)
fig.patch.set_facecolor('white')
ax1 = fig.add_subplot(311)
create_2d_pixel_hist(fig, ax1, hist, title=title, x_axis_title="column", y_axis_title="row", z_min=minimum if minimum else 0, z_max=maximum, cmap=cmap)
ax2 = fig.add_subplot(312)
create_1d_hist(fig, ax2, hist, bins=bins, x_axis_title=x_axis_title, y_axis_title="#", x_min=minimum, x_max=maximum)
ax3 = fig.add_subplot(313)
create_pixel_scatter_plot(fig, ax3, hist, x_axis_title="channel=row + column*336", y_axis_title=x_axis_title, y_min=minimum, y_max=maximum)
fig.tight_layout()
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例14: plot_occupancy
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_occupancy(hist, title='Occupancy', z_max=None, filename=None):
if z_max == 'median':
z_max = 2 * np.ma.median(hist)
elif z_max == 'maximum' or z_max is None:
z_max = np.ma.max(hist)
if z_max < 1 or hist.all() is np.ma.masked:
z_max = 1.0
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
ax.set_adjustable('box-forced')
extent = [0.5, 80.5, 336.5, 0.5]
bounds = np.linspace(start=0, stop=z_max, num=255, endpoint=True)
if z_max == 'median':
cmap = cm.get_cmap('coolwarm')
else:
cmap = cm.get_cmap('cool')
cmap.set_bad('w', 0.0)
norm = colors.BoundaryNorm(bounds, cmap.N)
im = ax.imshow(hist, interpolation='nearest', aspect='auto', cmap=cmap, norm=norm, extent=extent) # TODO: use pcolor or pcolormesh
ax.set_ylim((336.5, 0.5))
ax.set_xlim((0.5, 80.5))
ax.set_title(title + r' ($\Sigma$ = %d)' % (0 if hist.all() is np.ma.masked else np.ma.sum(hist)))
ax.set_xlabel('Column')
ax.set_ylabel('Row')
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.1)
cb = fig.colorbar(im, cax=cax, ticks=np.linspace(start=0, stop=z_max, num=9, endpoint=True))
cb.set_label("#")
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)
示例15: plot_pixel_matrix
# 需要导入模块: from matplotlib.figure import Figure [as 别名]
# 或者: from matplotlib.figure.Figure import show [as 别名]
def plot_pixel_matrix(hist, title="Hit correlation", filename=None):
logging.info("Plotting pixel matrix: %s", title)
fig = Figure()
FigureCanvas(fig)
ax = fig.add_subplot(111)
ax.set_title(title)
ax.set_xlabel('Col')
ax.set_ylabel('Row')
cmap = cm.get_cmap('jet')
ax.imshow(hist.T, aspect='auto', cmap=cmap, interpolation='nearest')
divider = make_axes_locatable(ax)
cax = divider.append_axes("right", size="5%", pad=0.05)
z_max = np.max(hist)
bounds = np.linspace(start=0, stop=z_max, num=255, endpoint=True)
norm = colors.BoundaryNorm(bounds, cmap.N)
fig.colorbar(boundaries=bounds, cmap=cmap, norm=norm, ticks=np.linspace(start=0, stop=z_max, num=9, endpoint=True), cax=cax)
if not filename:
fig.show()
elif isinstance(filename, PdfPages):
filename.savefig(fig)
else:
fig.savefig(filename)