python – 为pdf后端设置spines的capstyle

使用PDF后端呈现的数字在我的阅读器中具有“对接”样式. (如果我放大pdf中图形的一角,我看不到一个方角,而是缩短线的重叠.)我想要一个’圆’或’投影'(matplotlib称之为’square’ capstyle)帽子.因此Spine对象是有问题的,而Spine是Patch是一个艺术家,其中没有一个看起来像Line2D的set_solid_capstyle(),所以我不确定如何或在哪里强制特定的capstyle,或者如果它甚至可能. 最佳答案 我不认为这是可能的.我在我的主脚本中做了一些后端的工作,设置了一个RendererPdf(在backend_pdf.py中定义)并包含一个GraphicsContextPdf,这是一个GraphicsContextBase,它保持capstyle,初始化为butt.正如grep所证实的那样,这是唯一一个将对接硬编码为capstyle的地方.经过一些i
python调试后,我发现每次绘制补丁时都会生成一个新的GraphicsContextPdf或’gc'(参见patches.py:392,在主脚本中通过必要的fig.draw()调用),并且新gc的设置(再次初始化为butt)被合并到原始RendererPdf的gc中.所以一切都得到了屁股风格. Line2D对象不是补丁,因此它们可以维持特定的capstyle.

点赞