小编use*_*579的帖子

Matplotlib 保存到 pdf 没有在条形图中显示影线标记——潜在的错误?

我在 ubuntu 18.04 机器上使用 matplotlib 版本 3.1.1,并在 python 3.6.8 和 3.7.4 中在 2 个不同的机器上尝试了这段代码。

问题是,当有 10 个以上的项目时,颜色会自我重复,我做了一个快速更改以制作阴影线来区分。虽然这在显示中效果很好,但当我 savefig("*.pdf") 时,阴影不显示。savefig("*.png") 似乎工作正常,如下图所示。

我在多个地方搜索过这个问题,但似乎找不到有效的解决方案。我也试过 PdfPages。

下面附上简单的代码和输出。我很感激任何建议。

代码:

import matplotlib
import matplotlib.pyplot as plt
import pandas as pd

matplotlib.__version__  #3.1.1
df=pd.DataFrame({'A':[0.1]*12, 'B':[0.1]*12}).T
tit='title'

ax=df.plot.bar(figsize=(11,8.5),stacked=True,title=tit)
nrows=len(df)
bars = ax.patches
hatches=['','-', '+', 'x','/','//','O','o','\\','\\\\']*nrows*10 #times rows*colors
#
hatches.sort()
hatches=hatches[0:len(bars)]
i=0 
for bar in bars:# goes down a column with same color,  then next with diff color and so on.  
    bar.set_hatch(hatches[i])
    #bar.text('1')
    #print(bar)
    i+=1    
ax.legend(#loc='lower center', loc='upper center',bbox_to_anchor=(0.5, …
Run Code Online (Sandbox Code Playgroud)

python pdf png matplotlib

5
推荐指数
1
解决办法
312
查看次数

标签 统计

matplotlib ×1

pdf ×1

png ×1

python ×1