我使用以下代码制作了一个简单的3d条形图:frommpl_toolkits.mplot3dimportAxes3Dimportmatplotlib.pyplotaspltimportnumpyasnpfig=plt.figure()ax=fig.add_subplot(111,projection="3d")ax.set_xlabel("x")ax.set_ylabel("y")ax.set_zlabel("z")ax.set_xlim3d(0,10)ax.set_ylim3d(0,10)ax.set_zlim3d(0,2)xpos=[2,5,8,2,5,8,2,5,8]ypos=[1
我正在尝试创建一个直方图,以显示离散星级(1-5)中每个值的评分数量。每个值应该有一个条形,在x轴上,唯一要显示的数字是每个条形下方(居中)的[1,2,3,4,5]。我尝试将bin的数量设置为5或将它们的范围设置为0-7,但这会创建跨越值的条形(如提供的图像所示)这是我试过的代码(pandas和numpy):df.stars.hist()和hist,bins=np.histogram(x1,bins=5)ax.bar(bins[:-1],hist.astype(np.float32)/hist.sum(),width=(bins[1]-bins[0]),color="blue")
我有一个高分辨率的条形图。是否有可能像下面的ROOT图中那样只有图的边框/框架/顶线而没有,即没有内部线?如果我使用facecolor='none'或'white'绘图,绘图会被垂直线和水平线斜线:我摆脱它们的唯一方法是使edgecolor和facecolor相同,但这不是我需要的外观... 最佳答案 找到答案:实现所需外观的最简单方法是使用plt.step而不是plt.bar,就这么简单。为提问感到羞耻。 关于python-Matplotlib条形图去除内部线条,我们在StackOve
我的条形图有这段代码。ax1=plt.subplot2grid((1,1),(0,0))ax1.bar(edges2,Nnorm,width=0.02,edgecolor='green',linewidth=20)我认为这应该使我的条形图具有绿色边缘。但事实并非如此。它使最左边的一个条变为绿色。我究竟做错了什么?面部颜色有效。 最佳答案 不幸的是,thisisabuginmatplotlib2.1.它在matplotlib版本2.2中得到修复。目前的解决方法是分别为每个条设置边缘颜色和线宽:importmatplotlib.pypl
我使用matplotlib.pyplot和seaborn库创建了一个条形图。如何根据Speed对条形图进行升序排序?我想在左边看到速度最低的条,在右边看到速度最快的条。df=IdSpeed130135131220225380importpandasaspdimportmatplotlib.pyplotaspltimportseabornassns%matplotlibinlineresult=df.groupby(["Id"])['Speed'].aggregate(np.median).reset_index()norm=plt.Normalize(df["Speed"].value
我想在matplotlib中创建一个splinter的垂直条形图。为了更好地了解我想要的结果,我将一个示例与Balsamiq放在一起:我看过matpltolibdocs和examples但我似乎找不到合适的图表类型来使用。唯一看起来有点相似的是boxplot但这不是我需要的。我宁愿不必使用图形基元手动绘制图形。我可以根据需要整理数据。PS:如果您知道一个用另一种语言(例如javascript)执行此操作的好库,我也将不胜感激。 最佳答案 听起来您有几个系列的开始日期时间和停止日期时间。在那种情况下,只需使用bar来绘制事物,并告诉m
我需要像这样想出不同列表的条形图importmathimportnumpyasnpimportmatplotlib.pyplotaspltmonth=["dec-09","jan","feb"]n=len(month)kitchen=[57.801,53.887,49.268]laundry=[53.490,56.568,53.590]air=[383.909,395.913,411.714]other=[519.883,483.293,409.956]ind=np.arange(n)width=0.35p1=plt.bar(ind,kitchen,width,color="cyan"
请引用最小工作示例here.条形图绘制如下所示,但我找不到增加错误线粗细的方法。elinewidth选项在ax.bar中不可用>rects1=ax.bar(...,elinewidth=3)AttributeError:Unknownpropertyelinewidth以下链接需要使用ax.errorbar()ChangeerrorbarsizeHowtosetthelinewidthoferrorbarcaps,inmatplotlib?但是有没有可以直接提供给ax.bar()的选项? 最佳答案 您可以按如下方式使用error_k
我使用以下代码制作了一个多轴图,但无法按我的意愿排列图例。我的图的代码如下:importmatplotlib.pyplotaspltimportnumpyasnpx=np.arange(4)y=[5,7,4,9]z=[9,3,5,6]r=[30,40,45,37]fig,ax=plt.subplots()abc=ax.bar(x,y,0.25)cde=ax.bar(x+0.25,z,0.25)ax.legend((abc[0],cde[0]),('y','z'),bbox_to_anchor=(0.,1.02,1,.102),borderaxespad=0.)ax.set_xticks
希望这是一个简单的问题——在使用Pandas绘图时如何控制条形宽度和间隙?Fullcodeishere,转发如下:df=pd.DataFrame({'person':[x*3forxinlist('ABCDEF')],'score1':np.random.randn(6),'score2':np.random.randn(6),'score3':np.random.randn(6),'score4':np.random.randn(6),'score5':np.random.randn(6)})print(df)ax=df.set_index(['person']).plot(kind