- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想将 matplotlib 绘图中使用的默认字体更改为 Windows 下的 Segoe UI。我可以通过像这样改变 rcParams
来做到这一点
import matplotlib
matplotlib.rcParams['font.family'] = 'sans-serif'
matplotlib.rcParams['font.sans-serif'] = ['Segoe UI'] + matplotlib.rcParams['font.sans-serif']
matplotlib.rcParams['font.weight'] = 'normal'
这可行,但是字体的粗细似乎是错误的。使用以下代码,我可以确认 matplotlib 正在选择“Semibold”版本的字体,而不是我期望通过设置 matplotlib.rcParams['font.weight'] = 'normal' 得到的“Regular”变体
.
from matplotlib.font_manager import findfont, FontProperties
font = findfont(FontProperties(family=['sans-serif']))
print font
>>> c:\windows\fonts\seguisb.ttf
如何强制 matplotlib 使用“常规”变体?这可以通过rcParams
实现吗?
最佳答案
我想出了一个技巧,可以解决 Segoe UI 的问题,而无需每次都设置 kwargs...
出于某种原因,tf2font 模块(即 .pyd)将 400 的字体粗分割配给 Segoe UI Black、Ultralight、Light 和 Semi-bold 字体,而这些字体的字体粗细实际上应该为 1000、100,分别为 200 和 500。
首先删除你的 fontList.json 文件。(对我来说它位于 .matplotlib\fontList.json 中)。
然后,在 font_manager.py 中的这一行之前:
return FontEntry(font.fname, name, style, variant, weight, stretch, size)
插入以下代码:
switch = lambda x: {
#Correct the font-weight for these fonts
'seguibl.ttf': 1000,
'segouisl.ttf': 100,
'seguisb.ttf':500,
'segoeuil.ttf':200
}[x]
f = os.path.split(font.fname)[1]
if f in ['seguibl.ttf', 'segouisl.ttf', 'seguisb.ttf', 'segoeuil.ttf']:
weight = switch(f)
最终结果如下:
switch = lambda x: {
#Correct the font-weight for these fonts
'seguibl.ttf': 1000,
'segouisl.ttf': 100,
'seguisb.ttf':500,
'segoeuil.ttf':200
}[x]
f = os.path.split(font.fname)[1]
if f in ['seguibl.ttf', 'segouisl.ttf', 'seguisb.ttf', 'segoeuil.ttf']:
weight = switch(f)
return FontEntry(font.fname, name, style, variant, weight, stretch, size)
关于python - matplotlib 选择错误的字体样式/粗细,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39855124/
我有一个格式良好的单元格范围,具有不同的边框线粗细(其中一些是中等厚度,其中一些是薄的,没有特定的图案)。我想运行一个将边框颜色更改为灰色的宏,但每次执行此操作时,它都会自动将所有边框粗细更改为 xl
我可以使用百分比使我的图像/div 具有响应性。 如何使字体大小响应不同的屏幕大小? 最佳答案 我最近偶然发现了这个问题,并为此编写了一个适合我需要的解决方案。也许您会发现您也可以将它合并到您的 CS
在 iOS 8 中,为了获得 Helvetica Neue 的细变体,以下代码可以工作 UIFont.systemFontOfSize(50, weight: UIFontWeightThin) 在
我想将 matplotlib 绘图中使用的默认字体更改为 Windows 下的 Segoe UI。我可以通过像这样改变 rcParams 来做到这一点 import matplotlib matplo
我想知道是否有人知道基于 Bresenham 的线算法或任何类似算法绘制具有特定粗细的线的任何算法。 再想一想,我一直在想,对于每个 setPixel(x,y) 我只是画一个圆圈,例如: filled
我正在尝试自定义我已经拥有的用于选择 Google 字体和更新预览 DIV 的功能之一,但是我还想添加“字体大小”、“字体粗细”、“字母间距”等,但是此功能仅在您单击“主字体选择器”组合框时才有效,我
我正在使用 RaphaelJS 在 IE8 中调试一些性能问题。我们正在 raphael 中从大约 1000 个元素和文本节点构建图形,特别是一个图形在渲染时给我们带来了问题。在 IE9 中,根据机器
我是一名优秀的程序员,十分优秀!