我如何使用matplotlib图对象作为子图? 具体来说,我有一个函数,创build一个matplotlib图对象,我想将其作为另一个图中的一个子图。 总之,这里是我尝试过的精简伪代码: fig1 = plt.figure(1, facecolor='white') figa = mySeparatePlottingFunc(…) figb = mySeparatePlottingFunc(…) figc = mySeparatePlottingFunc(…) figd = mySeparatePlottingFunc(…) fig1.add_subplot(411, figure=figa) fig1.add_subplot(412, figure=figb) fig1.add_subplot(413, figure=figc) fig1.add_subplot(414, figure=figd) fig1.show() 不幸的是,这失败了。 我知道从函数调用返回的单个图是可行的 – 我做了一个figa.show(),…,figd.show()来确认它们是正确的。 我在上面的代码块的最后一行得到了什么–fig1.show() – 是四个空的绘图的集合,有四个框架和x和y的tickmarks /标签。 我做了相当多的search,并进行了广泛的尝试,但很显然,我已经错过了一些非常微妙或者显而易见的事情(只要我可以,我会很高兴它成为后者得到不卡住)。 感谢您提供的任何build议!
我生成了一个条形图,如何显示每个条上的条形图的值? 当前情节: 我想要得到什么: 我的代码: import os import numpy as np import matplotlib.pyplot as plt x = [u'INFO', u'CUISINE', u'TYPE_OF_PLACE', u'DRINK', u'PLACE', u'MEAL_TIME', u'DISH', u'NEIGHBOURHOOD'] y = [160, 167, 137, 18, 120, 36, 155, 130] fig, ax = plt.subplots() width = 0.75 # the width of the bars ind = np.arange(len(y)) # the x locations for […]
我正在努力解决以下问题。 我需要生成由一组图表组成的报表。 所有这些图表,除了一个,都使用Matplotlib默认后端(TkAgg)。 一张图需要使用开罗后端,原因是我正在绘制igraph图,只能使用开罗绘制。 问题是我不能dynamic更改后端,例如以下不起作用: matplotlib.pyplot.switch_backend('cairo.png') (我知道switch_backendfunction是实验性的) 我也试过matplotlib.use("cairo.png")但是这会导致导入问题,因为matplotlib.use("cairo.png")语句应该在导入matplotlib.pyplot之前出现。 但在脚本的生命周期中,我需要两个不同的后端。 所以我的问题是有人有一个代码片段,显示如何切换在Matplotlib后端? 非常感谢! 更新:我写了一个代码加载matplotlib,显示默认后端,卸载matplotlib,重新加载它,并更改后端: import matplotlib import matplotlib.pyplot as plt import sys print matplotlib.pyplot.get_backend() modules = [] for module in sys.modules: if module.startswith('matplotlib'): modules.append(module) for module in modules: sys.modules.pop(module) import matplotlib matplotlib.use("cairo.png") import matplotlib.pyplot as plt print matplotlib.pyplot.get_backend() 但这真的是这样做的方式吗? 更新2:昨天我有一些严重的脑冻结…简单而最明显的解决scheme是使用开罗后端的所有图表,而不是切换后端所有:) 更新3:其实,这仍然是一个问题,所以谁知道如何dynamic地切换matplotlib后端….请发表您的答案。
看来, set_xticks不是在日志范围内工作: from matplotlib import pyplot as plt fig1, ax1 = plt.subplots() ax1.plot([10, 100, 1000], [1,2,3]) ax1.set_xscale('log') ax1.set_xticks([20, 200, 500]) plt.show() 可能吗?
我无法弄清楚如何旋转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')
我有一个存储在numpy数组中的点x和y的范围。 那些表示x(t)和y(t),其中t = 0 … T-1 我正在绘制使用散点图 import matplotlib.pyplot as plt plt.scatter(x,y) plt.show() 我想有一个表示时间的颜色图(因此根据numpy数组中的索引给点着色) 最简单的方法是什么?
我在Matplotlib的财务图表上遇到了一些困难。 看起来他们的烛台图表在日常数据上效果最好,而且我很难让他们在盘中(每隔5分钟,9点半到4点之间)处理数据。 我在pastebin中粘贴了样本数据。 顶部是我从数据库中得到的东西,底部是格式化为一个序数浮动的date,用于Matplotlib。 链接到示例数据 当我绘制我的图表时,它们之间存在巨大的差距,轴线吸吮,缩放同样可怕。 http://imgur.com/y7O8A 如何从这些数据中创build一个可读的图表? 我的最终目标是获得一个像这样的远程图表: View post on imgur.com 数据点可以从5分钟到30分钟不等。 我也做了pandas数据框的数据,但我不确定pandas是否有烛台function。
在用于散点图的pyplot文档中: matplotlib.pyplot.scatter(x,y,s = 20,c ='b',marker ='o',cmap = None,norm = None,vmin = None,vmax = None,alpha = None,linewidths = None, faceted = True,verts = None,hold = None,** kwargs) 标记大小 s:以点数^ 2的大小。 它是与x和y相同长度的标量或数组。 什么样的单位是points^2 ? 这是什么意思? s=100是指10 pixel x 10 pixel吗? 基本上我试图用不同的标记尺寸来绘制散点图,我想知道这个数字是什么意思。
我在python和matplotlib中有一个简单的问题。 我有3个列表:x,y和rho,其中rho [i]是点x [i],y [i]的密度。 x和y的所有值都在-1之间。 和1,但他们不是在一个特定的顺序。 如何制作密度ρ(插入点x,y)的等值线图(如imshow)。 非常感谢你。 编辑:我使用大型数组:x,y和rho有10,000到1,000,000个元素
我经常在一个matplotlib图上绘制一个点: x = 10 y = 100 plot(x, y, "k*", label="Global Optimum") legend() 然而,这导致传说两次在传说中放了一颗星,使得它看起来像: * * Global Optimum 当我真的想要它看起来像: * Global Optimum 我如何做到这一点?