ax=sns.barplot(x="size",y="algorithm",hue="ordering",data=df2,palette=sns.color_palette("cubehelix",4))在创建seabornbarplot之后(或之前),有没有办法让我为每个条传递影线(填充图案和颜色)值?在seaborn或matplotlib中执行此操作的方法会有很大帮助! 最佳答案 您可以遍历通过捕获barplot返回的AxesSubplot创建的条形图,然后遍历它的patches。然后,您可以使用.set_hatch()为每个
我需要以各种形式绘制一些数据。目前我正在使用Matplotlib我对自己能够制作的情节相当满意。这道题是关于最后一道怎么画的。数据类似于“距离表”,如this(更大一点,我的表格是128x128,每个元素仍然有3个或更多数字)。现在,我的数据比距离表“结构化”得多(我的数据不像在按字母顺序排序的距离表中那样“随机”变化),因此是3Dbarchart,或者其中的3个,将是完美的。我的理解是Matplotlib中缺少这样的图表。我可以使用像these这样的(彩色)Countor3d或imshow之类的2D内容,但它并不能很好地代表数据是什么(数据仅在我的128点中有意义,两点之间没有任何意
当我制作一个包含4个或更多值的3d条形图时,图形看起来是正确的,但是当我尝试使用3个值时,条形变成三角形,这是怎么回事?frommpl_toolkits.mplot3dimportAxes3Dimportmatplotlib.pyplotaspltimportnumpyasnpfig=plt.figure()ax=fig.add_subplot(111,projection='3d')color_grade_classes=['#80FF00','#FFFF00','#FF8000','#FF0000']forcolors,rowsinzip(color_grade_classes,[
我问这个问题是因为我还没有找到关于如何注释分组水平Pandas条形图的工作示例。我知道以下两个:AnnotatebarswithvaluesonPandasbarplotsPandas,BarChartAnnotations但它们都是关于垂直条形图的。即,要么没有水平条形图的解决方案,要么它不能完全工作。在处理这个问题几周后,我终于可以用示例代码提出问题,这几乎是我想要的,只是不是100%有效。需要您的帮助才能达到100%。我们开始吧,fullcodeisuploadedhere.结果如下所示:你可以看到它几乎可以工作,只是标签没有放在我想要的位置,我无法自己将它们移动到更好的位置。另
我正在尝试“稳健地”将堆叠条形图中的数据标签居中。下面给出了一个简单的代码示例和结果。如您所见,数据标签并非真正位于所有矩形的中心。我错过了什么?importnumpyasnpimportmatplotlib.pyplotaspltA=[45,17,47]B=[91,70,72]fig=plt.figure(facecolor="white")ax=fig.add_subplot(1,1,1)bar_width=0.5bar_l=np.arange(1,4)tick_pos=[i+(bar_width/2)foriinbar_l]ax1=ax.bar(bar_l,A,width=bar
我为板球锦标赛中裁判最多比赛次数的裁判绘制了一个计数图。使用的代码是:ax=matches['umpires'].value_counts().head(10).plot.bar(width=.8)这会正确绘制条形图,但计数的确切值不会显示在每个条形图的顶部。如何在每个条上显示确切的数字? 最佳答案 我想你需要通过iterrows循环并添加新标签:np.random.seed(100)L=list('ABCDEFGHIJKLMNOPQRSTUVWXYZ')matches=pd.DataFrame(np.random.choice(L
Yesterday,Iaskedaquestionthatwasperhapstoobroad.今天,我已经按照我的想法付诸行动,努力实现解决方案。使用ReportLab、pdfquery和PyPDF2,我试图在PDF文档的数百页上自动生成条形码。每一页都需要有一个条形码。但是,如果页面右上角有一个字母(“A”到“E”),则它需要使用与上一页相同的条形码。右上角带有字母的文件是具有相似信息的重复表格。如果不存在字母,则应在该页面上使用唯一的条形码编号(递增1即可)。我的代码似乎可以工作,但我有两个问题:条形码移动非常轻微(小问题)。条形码值不会改变(主要问题)。所有页面只设置第一个条码
我正在尝试从这样的DataFrame生成条形图:PrePostMeasure10.41.9这些值是我从别处计算的中值,我还有它们的方差和标准差(还有标准误差)。我想将结果绘制为带有适当误差条的条形图,但为yerr指定多个错误值会产生异常:#DataisaDataFrameinstancefig=data.plot(kind="bar",yerr=[0.1,0.3])[...]ValueError:Insafezip,len(args[0])=1butlen(args[1])=2如果我指定单个值(不正确),一切都很好。我如何才能真正为每列提供正确的错误栏? 最
我有数据列表,这些数据表明了对李克特问题的回答,从1(非常不开心)到5(非常开心)。我想创建一页图表,将这些列表显示为倾斜堆叠的水平条形图。响应列表可以有不同的大小(例如,当某人选择不回答特定问题时)。这是数据的最小示例:likert1=[1.0,2.0,1.0,2.0,1.0,3.0,3.0,4.0,4.0,1.0,1.0]likert2=[5.0,4.0,5.0,4.0,5.0,3.0]我希望能够用类似的东西来绘制它:plot_many_likerts(likert1,likert2)目前我已经编写了一个函数来遍历列表,并将每个列表作为自己的子图绘制在matplotlib中的共享图
假设我们将一些数据读取到pandas数据框中:data1=pd.read_csv("data.csv","\t")内容是这样的:然后定义一个函数,它应该给我们一个水平条形图,其中条形长度代表值,条形图上标有键。defbarchart(data,labels):pos=arange(len(data))+.5#thebarcentersontheyaxisbarh(pos,data,align='center',height=0.25)yticks(pos,labels)然后我们这样调用绘图函数:barchart(data1["val"],data1["key"])这给了我们以下情节:现