source: sasview/src/sas/sasgui/plottools/config.py @ 6d05e1d

ESS_GUIESS_GUI_DocsESS_GUI_batch_fittingESS_GUI_bumps_abstractionESS_GUI_iss1116ESS_GUI_iss879ESS_GUI_iss959ESS_GUI_openclESS_GUI_orderingESS_GUI_sync_sascalc
Last change on this file since 6d05e1d was 6d05e1d, checked in by Piotr Rozyczko <rozyczko@…>, 8 years ago

More functionality for quick plots + unit tests

  • Property mode set to 100644
File size: 2.4 KB
Line 
1# This program is public domain
2"""
3Configure plotter for plottools.
4
5This must be imported first in __init__.py for plottools.
6
7If your application uses matplotlib outside plottools, then
8please do the following at the start of your application:
9
10    # Select matplotlib version and backend
11    import sas.sasgui.plottools.config
12
13Note that plottools requires particular versions of matplotlib
14and a particular backend.  As of this writing it is the WXAgg
15backend for matplotlib>=0.98.
16
17The plottools package uses pkg_resources if available to select
18the correct version of matplotlib.  If you need multiple matplotlib
19versions in your path, be sure to use "easy_install -m" for all
20of them.  If a version is installed without "-m" that does not
21meet the requirements, then pkg_resources.require() will fail,
22even if you have installed a suitable version with "-m".  In this
23case you will need to fix up your site-packages directory,
24probably by removing site-packages/matplotlib and the associated
25egg file for that version, and reinstalling with "-m".  You may
26also need to edit site-packages/easy-install.pth.
27"""
28import sys
29
30__all__ = []
31
32plot_version = "0.98"
33plot_backend = "WXAgg"
34
35# Sort out matplotlib version
36import matplotlib
37#try:
38#    import pkg_resources
39#    pkg_resources.require("matplotlib>=" + plot_version)
40#except:
41#    from distutils.version import LooseVersion as Version
42#    if Version(matplotlib.__version__) < Version(plot_version):
43#        msg = "Matplotlib version must be %s or newer" % (plot_version, )
44#        raise ImportError(msg)
45
46# Sort out matplotlib backend
47#import matplotlib
48if 'matplotlib.backends' not in sys.modules:
49    # if no backend yet, be sure to use the correct one
50    matplotlib.use(plot_backend)
51elif matplotlib.get_backend() != plot_backend:
52    # if a backend has already been selected, make sure it is the correct one.
53    #raise ImportError("Matplotlib not using backend " + plot_backend)
54    pass
55
56# set global plot style
57param = 'legend.handletextpad'
58if param not in matplotlib.rcParams: param = 'legend.handletextsep'
59matplotlib.rcParams[param] = 0.05
60matplotlib.rcParams['legend.numpoints'] = 1
61
62# this should happen after initial matplotlib configuration
63from .toolbar import NavigationToolBar
64from matplotlib.backends import backend_wxagg
65backend_wxagg.NavigationToolbar2WxAgg = NavigationToolBar
66
67# CRUFT: bumps 0.7.5.6 and older uses wrong toolbar
68backend_wxagg.NavigationToolbar2Wx = NavigationToolBar
Note: See TracBrowser for help on using the repository browser.