Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Won't use a font although it can be found by the FontManager #3590

Closed
MichaelAdolph opened this issue Sep 29, 2014 · 7 comments
Closed

Won't use a font although it can be found by the FontManager #3590

MichaelAdolph opened this issue Sep 29, 2014 · 7 comments

Comments

@MichaelAdolph
Copy link

Hi,
I was asked to file an Issue here on github, although I'm not sure if the problem is not in front of my PC... .

from pylab import *
from math import sin
rc('text', usetex = False)
la = matplotlib.font_manager.FontManager()
lu = matplotlib.font_manager.FontProperties(family = 'Heuristica')
print la.findfont(lu)
x = np.arange(0,5,0.1)
y = map(sin,x)
title('This is an unnecessary title', family = 'Heuristica')
plot(x,y)
show()

As a result I get (besides a graph using an unwanted font):

C:\Windows\Fonts\Heuristica-Regular.otf
C:\Python27\lib\site-packages\matplotlib\font_manager.py:1279: UserWarning: findfont: Font   family ['Heuristica'] not found. Falling back to Bitstream Vera Sans
(prop.get_family(), self.defaultFamily[fontext]))

If I add Heuristica on first spot of the serif-font-Types this will also not work, (i. e. font.serif : Heuristica, Bitstream Vera Serif)

I am using matplotlib 1.4.0 and Python 2.7.6, I asked this question on StackOverflow first

@mdboom
Copy link
Member

mdboom commented Sep 29, 2014

When you add new fonts to your system, you need to delete your fontList.cache file in order for matplotlib to find them.

The reason it works on lines 4/5 in your example is because you are creating a FontManager from scratch (which goes out to the filesystem and hunts down all the fonts). Internally, when matplotlib later does its own font lookup, it is using a FontManager that has been loaded from a cache on disk in the fontList.cache file.

Long term, we have plans to switch to using the font lookup mechanisms of the OS to get around this problem, (see MEP14), but in the meantime, you'll need to remove the fontList.cache file everytime you want matplotlib to discover new fonts.

@mdboom mdboom closed this as completed Sep 29, 2014
@MichaelAdolph
Copy link
Author

Perfect! That trick did it. the fontList.cache is located at Home/.matplotlib

@tacaswell
Copy link
Member

Blah, should have known that...

@liuyang1
Copy link

maybe also /tmp/xdgcache/matplotlib directory in 1.4.2 version

@bastelflp
Copy link

The matplotlib font cache can be found here:
Win7: %userprofile%\.matplotlib\
Ubuntu: ~/.cache/matplotlib

joslloand added a commit to ambisonictoolkit/atk-sc3 that referenced this issue Jul 15, 2016
commit for the figures for
#11

Will need to follow with an update to SCHelp describing the scales
[gain, r, theta]

NOTE: Fonts and scaling have changed as a result of an issue with
anaconda/matplotlib. Some relevant issues can be found here:

fonnesbeck/ScipySuperpack#39
matplotlib/matplotlib#5836
matplotlib/matplotlib#5640
matplotlib/matplotlib#6721
matplotlib/matplotlib#3590
joslloand added a commit to supercollider/sc3-plugins that referenced this issue Jul 16, 2016
More verbose Intro-to-the-ATK. Describe in more detail how to read
transform figures with description of sound field quality measure, rE.

Transform plots now illustrate rE rather than rV, which is more closely
tied to perception.

NOTE: Fonts and scaling have changed as a result of an issue with
anaconda/matplotlib. Some relevant issues can be found here:

fonnesbeck/ScipySuperpack#39
matplotlib/matplotlib#5836
matplotlib/matplotlib#5640
matplotlib/matplotlib#6721
matplotlib/matplotlib#3590
@ashleylid
Copy link

This is closed so apologies for raising it again. This is not working for me, matplotlib version: 1.5.1.

@WeatherGod
Copy link
Member

WeatherGod commented May 25, 2017 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants