Merge pull request #1508 from ggaaooppeenngg/custom-font-recipe

Add recipe for installing custom fonts
This commit is contained in:
Ayaz Salikhov
2021-11-02 12:38:59 +03:00
committed by GitHub

View File

@@ -549,3 +549,20 @@ RUN echo "from pyspark.sql import SparkSession" > /tmp/init-delta.py && \
python /tmp/init-delta.py && \
rm /tmp/init-delta.py
```
## Add Custom Font in Scipy notebook
The example below is a Dockerfile to load Source Han Sans with normal weight which is usually used for web.
```dockerfile
FROM jupyter/scipy-notebook:latest
RUN PYV=$(ls "${CONDA_DIR}/lib" | grep ^python) && \
MPL_DATA="${CONDA_DIR}/lib/${PYV}/site-packages/matplotlib/mpl-data" && \
wget --quiet -P "${MPL_DATA}/fonts/ttf/" https://mirrors.cloud.tencent.com/adobe-fonts/source-han-sans/SubsetOTF/CN/SourceHanSansCN-Normal.otf && \
sed -i 's/#font.family/font.family/g' "${MPL_DATA}/matplotlibrc" && \
sed -i 's/#font.sans-serif:/font.sans-serif: Source Han Sans CN,/g' "${MPL_DATA}/matplotlibrc" && \
sed -i 's/#axes.unicode_minus: True/axes.unicode_minus: False/g' "${MPL_DATA}/matplotlibrc" && \
rm -rf "/home/${NB_USER}/.cache/matplotlib" && \
python -c 'import matplotlib.font_manager;print("font loaded: ",("Source Han Sans CN" in [f.name for f in matplotlib.font_manager.fontManager.ttflist]))'
```