epozh001 at umaryland.edu
Thu Aug 18 10:39:18 PDT 2011
This is really a rather esoteric issue, but I feel I need to mention
this to save someone, depending on the situation, anywhere between five
minutes of googling or two hours of hair-pulling.
In a nutshell, phenix gui may in some circumstances screw up other
programs that use matplotlib. I can't track down which specific phenix
gui action causes it, but it's safe to assume that whenever matplotlib
libs are used the subsequent calls to logarithmic scale plots (and
likely other things) throw this error
TypeError: coercing to Unicode: need string or buffer, dict found
The solution is to erase the ~/.matplotlib/fontList.cache.
The likely cause is that phinix gui calls on bundled matplotlib which is
different from one I have installed (not to mention that I am using
Lucid (because it's LTS) which has python 2.6 and not the 2.7 that is
bundled with phenix). However, it still writes into the same
~/.matplotlib folder, thus I end up with incompatible data. Certainly,
the problem will be gone when matplotlib gets bumped up to 1.0.1 in next
This is yet another example of why the standalone installation approach
is ideologically objectionable on modern Linux. But of course, the
practical advantage gained by not having to package the software for any
possible OS flavor/version users may choose outweighs the lower risks of
package incompatibility and the reduced size of the packaged product.
Oh, suddenly throwing a giraffe into a volcano to make water is crazy?
Julian, King of Lemurs
More information about the phenixbb