使用 mpld3 保存为 html 文件的条形图在顶部显示 x 轴刻度
bar chart saved as html file using mpld3 shows x-axis ticks on top
我有一个 python 代码,它使用 mpld3 save_html 方法将条形图存储为 html 文件。但是,当我呈现 html 文件时,条形图在顶部显示 x 轴刻度,如下所示。
我根本不想显示 刻度线,也没有刻度线标签,但希望 x 轴线位于底部。我以为我已经做了必要的步骤来防止这种情况发生。请看下面的代码。
我将不胜感激这里的任何帮助。我正在空白。
fig1,ax1=plt.subplots()
dsize=fig1.get_size_inches()
fig1.set_size_inches((dsize[0]/2)*(1.5),(dsize[1]/2)*(1.25))
m_colors= ['red','green','blue','yellow','black','cyan','aqua','brown','coral','magenta','khaki','indigo','lavender','navy','olive','pink','plum','teal','tan','violet','wheat','orchid']
bucket=['apple','banana','orange','lemon','pineapple']
counts=[10,20,5,16,2]
rects = ax1.bar(bucket,counts,color=m_colors)
ax1.set_xlabel('Service Types')
ax1.set_ylabel('Anomalous Flow per Service Type')
ax1.tick_params(axis='x',which='both',bottom='off',top='off',labelbottom='off')
ax1.xaxis.set_label_position('bottom')
for rect in rects:
height = rect.get_height()
ax1.text(rect.get_x() + rect.get_width()/2., 1.05*height,
'%d' % int(height),
ha='center', va='bottom')
#leg=ax1.legend((rects),(unique))
legend_font_props = FontProperties()
legend_font_props.set_size('xx-small')
leg=ax1.legend((rects),(bucket),loc='upper right',prop=legend_font_props)
mpld3.save_html(fig1,"test.html")
Mpld3 并没有完美再现matplotlib 图形,它只是试图接近相同的外观。在这种情况下,复制轴参数似乎有问题。
如果替换行
ax1.tick_params(axis='x',which='both',bottom='off',top='off',labelbottom='off')
ax1.xaxis.set_label_position('bottom')
来自
ax1.set_xticks([])
结果看起来像
这似乎接近你想要的。
我有一个 python 代码,它使用 mpld3 save_html 方法将条形图存储为 html 文件。但是,当我呈现 html 文件时,条形图在顶部显示 x 轴刻度,如下所示。
我根本不想显示 刻度线,也没有刻度线标签,但希望 x 轴线位于底部。我以为我已经做了必要的步骤来防止这种情况发生。请看下面的代码。 我将不胜感激这里的任何帮助。我正在空白。
fig1,ax1=plt.subplots()
dsize=fig1.get_size_inches()
fig1.set_size_inches((dsize[0]/2)*(1.5),(dsize[1]/2)*(1.25))
m_colors= ['red','green','blue','yellow','black','cyan','aqua','brown','coral','magenta','khaki','indigo','lavender','navy','olive','pink','plum','teal','tan','violet','wheat','orchid']
bucket=['apple','banana','orange','lemon','pineapple']
counts=[10,20,5,16,2]
rects = ax1.bar(bucket,counts,color=m_colors)
ax1.set_xlabel('Service Types')
ax1.set_ylabel('Anomalous Flow per Service Type')
ax1.tick_params(axis='x',which='both',bottom='off',top='off',labelbottom='off')
ax1.xaxis.set_label_position('bottom')
for rect in rects:
height = rect.get_height()
ax1.text(rect.get_x() + rect.get_width()/2., 1.05*height,
'%d' % int(height),
ha='center', va='bottom')
#leg=ax1.legend((rects),(unique))
legend_font_props = FontProperties()
legend_font_props.set_size('xx-small')
leg=ax1.legend((rects),(bucket),loc='upper right',prop=legend_font_props)
mpld3.save_html(fig1,"test.html")
Mpld3 并没有完美再现matplotlib 图形,它只是试图接近相同的外观。在这种情况下,复制轴参数似乎有问题。
如果替换行
ax1.tick_params(axis='x',which='both',bottom='off',top='off',labelbottom='off')
ax1.xaxis.set_label_position('bottom')
来自
ax1.set_xticks([])
结果看起来像
这似乎接近你想要的。