From e174acd4a30d8524352aa9f7eac69114f5ee7d8a Mon Sep 17 00:00:00 2001 From: Michael Orlitzky Date: Mon, 14 Apr 2014 21:08:56 -0400 Subject: [PATCH] Override list_plot (in addition to the already-overriden plot()). --- mjo/plot.py | 30 +++++++++++++++++++++++------- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/mjo/plot.py b/mjo/plot.py index 87fccb3..21bd24c 100644 --- a/mjo/plot.py +++ b/mjo/plot.py @@ -19,6 +19,7 @@ show_opts['tick_formatter'] = 'latex' # Save the original implementation so that we can call it from # within mjo_plot. plot_impl = sage.plot.plot._plot +list_plot_impl = sage.plot.plot.list_plot def mjo_plot(*args, **kwargs): """ @@ -31,16 +32,31 @@ def mjo_plot(*args, **kwargs): default_legend_opts = { 'back_color': 'white', 'shadow': True } - # Create an empty plot using the default options. - p = Graphics() + p = plot_impl(*args, **kwargs) p.set_legend_options(**default_legend_opts) - # After trac #12936, this should propagate those options. - p += plot_impl(*args, **kwargs) return p -# This way, we don't have to try to replace all of the calls to -# plot(); we just replace the one function that did the actual -# implementation. +def mjo_list_plot(*args, **kwargs): + """ + Replacement for the default list_plot function. + + - If there's a legend, set the background color to 'white' and + give it a drop shadow. + + """ + default_legend_opts = { 'back_color': 'white', + 'shadow': True } + + p = list_plot_impl(*args, **kwargs) + p.set_legend_options(**default_legend_opts) + + return p + + +# This way, we don't have to try to replace all of the calls to plot() +# and list_plot(); we just replace the two function that did the +# actual implementations. sage.plot.plot._plot = mjo_plot +sage.plot.plot.list_plot = mjo_list_plot -- 2.44.2