[yt-svn] commit/yt: 3 new changesets
commits-noreply at bitbucket.org
commits-noreply at bitbucket.org
Mon Dec 30 08:48:00 PST 2013
3 new commits in yt:
https://bitbucket.org/yt_analysis/yt/commits/b1bcb38993ec/
Changeset: b1bcb38993ec
Branch: yt
User: John Regan
Date: 2013-12-06 14:31:48
Summary: Minor updates to eps writer
Affected #: 2 files
diff -r be524f912750b192aab75b9e5aacdab3421b2e6c -r b1bcb38993ecbb3b2b95b76df78ad17ee65a4f97 yt/visualization/eps_writer.py
--- a/yt/visualization/eps_writer.py
+++ b/yt/visualization/eps_writer.py
@@ -31,6 +31,7 @@
from .profile_plotter import PhasePlot
from .plot_modifications import get_smallest_appropriate_unit
+
class DualEPS(object):
def __init__(self, figsize=(12,12)):
r"""Initializes the DualEPS class to which we can progressively add layers
@@ -540,6 +541,12 @@
# Scale the colorbar
shift = (0.5*(1.0-shrink[0])*size[0], 0.5*(1.0-shrink[1])*size[1])
+ # To facilitate strething rather than shrinking
+ # If stretched in both directions (makes no sense?) then y dominates.
+ if(shrink[0] > 1.0):
+ shift = (0.05*self.figsize[0], 0.5*(1.0-shrink[1])*size[1])
+ if(shrink[1] > 1.0):
+ shift = (0.5*(1.0-shrink[0])*size[0], 0.05*self.figsize[1])
size = (size[0] * shrink[0], size[1] * shrink[1])
origin = (origin[0] + shift[0], origin[1] + shift[1])
@@ -694,6 +701,59 @@
#=============================================================================
+ def arrow(self, size=0.2, label="", loc=(0.05,0.08), labelloc="top",
+ color=pyx.color.cmyk.white,
+ linewidth=pyx.style.linewidth.normal):
+ r"""Draws an arrow in the current figure
+
+ Parameters
+ ----------
+ size : float
+ Length of arrow (base to tip) in units of the figure size.
+ label : string
+ Annotation label of the arrow.
+ loc : tuple of floats
+ Location of the left hand side of the arrow in units of
+ the figure size.
+ labelloc : string
+ Location of the label with respect to the line. Can be
+ "top" or "bottom"
+ color : `pyx.color.*.*`
+ Color of the arrow. Example: pyx.color.cymk.white
+ linewidth : `pyx.style.linewidth.*`
+ Width of the arrow. Example: pyx.style.linewidth.normal
+
+ Examples
+ --------
+ >>> d = DualEPS()
+ >>> d.axis_box(xrange=(0,100), yrange=(1e-3,1), ylog=True)
+ >>> d.insert_image("arrow_image.jpg")
+ >>> d.arrow(size=0.2, label="Black Hole!", loc=(0.05, 0.1))
+ >>> d.save_fig()
+ """
+ line = pyx.path.line(self.figsize[0]*loc[0],
+ self.figsize[1]*loc[1],
+ self.figsize[0]*(loc[0]+size),
+ self.figsize[1]*loc[1])
+ self.canvas.stroke(line, [linewidth, color, pyx.deco.earrow()])
+
+
+ if labelloc == "bottom":
+ yoff = -0.1*size
+ valign = pyx.text.valign.top
+ else:
+ yoff = +0.1*size
+ valign = pyx.text.valign.bottom
+ if label != "":
+ self.canvas.text(self.figsize[0]*(loc[0]+0.5*size),
+ self.figsize[1]*(loc[1]+yoff), label,
+ [color, valign, pyx.text.halign.center])
+
+
+
+
+#=============================================================================
+
def scale_line(self, size=0.2, label="", loc=(0.05,0.08), labelloc="top",
color=pyx.color.cmyk.white,
linewidth=pyx.style.linewidth.normal):
@@ -724,6 +784,7 @@
>>> d.scale_line(size=0.2, label="1 kpc", loc=(0.05, 0.1))
>>> d.save_fig()
"""
+
line = pyx.path.line(self.figsize[0]*loc[0],
self.figsize[1]*loc[1],
self.figsize[0]*(loc[0]+size),
@@ -749,7 +810,8 @@
if label != "":
self.canvas.text(self.figsize[0]*(loc[0]+0.5*size),
self.figsize[1]*(loc[1]+yoff), label,
- [color, valign, pyx.text.halign.center])
+ [color, valign, pyx.text.halign.center,
+ pyx.text.size.large])
#=============================================================================
@@ -937,7 +999,8 @@
d = DualEPS(figsize=figsize)
count = 0
for j in range(nrow):
- ypos = j*(figsize[1] + margins[1])
+ invj = nrow - j - 1
+ ypos = invj*(figsize[1] + margins[1])
for i in range(ncol):
xpos = i*(figsize[0] + margins[0])
index = j*ncol + i
@@ -1003,7 +1066,8 @@
100.0 * d.canvas.bbox().bottom().t,
100.0 * d.canvas.bbox().top().t - d.figsize[1])
for j in range(nrow):
- ypos0 = j*(figsize[1] + margins[1])
+ invj = nrow - j - 1
+ ypos0 = invj*(figsize[1] + margins[1])
for i in range(ncol):
xpos0 = i*(figsize[0] + margins[0])
index = j*ncol + i
diff -r be524f912750b192aab75b9e5aacdab3421b2e6c -r b1bcb38993ecbb3b2b95b76df78ad17ee65a4f97 yt/visualization/plot_window.py
--- a/yt/visualization/plot_window.py
+++ b/yt/visualization/plot_window.py
@@ -1149,8 +1149,6 @@
self.set_axes_unit(axes_unit)
def _recreate_frb(self):
- if self._frb is not None:
- raise NotImplementedError
super(OffAxisProjectionPlot, self)._recreate_frb()
_metadata_template = """
https://bitbucket.org/yt_analysis/yt/commits/21c31a3549a9/
Changeset: 21c31a3549a9
Branch: yt
User: John Regan
Date: 2013-12-06 14:55:41
Summary: Removed large text
Affected #: 1 file
diff -r b1bcb38993ecbb3b2b95b76df78ad17ee65a4f97 -r 21c31a3549a9ae4dcc03078de794f9dce97fcd14 yt/visualization/eps_writer.py
--- a/yt/visualization/eps_writer.py
+++ b/yt/visualization/eps_writer.py
@@ -810,8 +810,7 @@
if label != "":
self.canvas.text(self.figsize[0]*(loc[0]+0.5*size),
self.figsize[1]*(loc[1]+yoff), label,
- [color, valign, pyx.text.halign.center,
- pyx.text.size.large])
+ [color, valign, pyx.text.halign.center])
#=============================================================================
https://bitbucket.org/yt_analysis/yt/commits/980bb22a8436/
Changeset: 980bb22a8436
Branch: yt
User: MatthewTurk
Date: 2013-12-30 17:47:56
Summary: Merged in john_regan/yt-fork (pull request #673)
Minor updates to eps writer
Affected #: 2 files
diff -r a077c40cc79a2ef7850116fd6e85287e3a93312f -r 980bb22a8436a2dc0640fce06128075e6d0ed688 yt/visualization/eps_writer.py
--- a/yt/visualization/eps_writer.py
+++ b/yt/visualization/eps_writer.py
@@ -31,6 +31,7 @@
from .profile_plotter import PhasePlot
from .plot_modifications import get_smallest_appropriate_unit
+
class DualEPS(object):
def __init__(self, figsize=(12,12)):
r"""Initializes the DualEPS class to which we can progressively add layers
@@ -540,6 +541,12 @@
# Scale the colorbar
shift = (0.5*(1.0-shrink[0])*size[0], 0.5*(1.0-shrink[1])*size[1])
+ # To facilitate strething rather than shrinking
+ # If stretched in both directions (makes no sense?) then y dominates.
+ if(shrink[0] > 1.0):
+ shift = (0.05*self.figsize[0], 0.5*(1.0-shrink[1])*size[1])
+ if(shrink[1] > 1.0):
+ shift = (0.5*(1.0-shrink[0])*size[0], 0.05*self.figsize[1])
size = (size[0] * shrink[0], size[1] * shrink[1])
origin = (origin[0] + shift[0], origin[1] + shift[1])
@@ -694,6 +701,59 @@
#=============================================================================
+ def arrow(self, size=0.2, label="", loc=(0.05,0.08), labelloc="top",
+ color=pyx.color.cmyk.white,
+ linewidth=pyx.style.linewidth.normal):
+ r"""Draws an arrow in the current figure
+
+ Parameters
+ ----------
+ size : float
+ Length of arrow (base to tip) in units of the figure size.
+ label : string
+ Annotation label of the arrow.
+ loc : tuple of floats
+ Location of the left hand side of the arrow in units of
+ the figure size.
+ labelloc : string
+ Location of the label with respect to the line. Can be
+ "top" or "bottom"
+ color : `pyx.color.*.*`
+ Color of the arrow. Example: pyx.color.cymk.white
+ linewidth : `pyx.style.linewidth.*`
+ Width of the arrow. Example: pyx.style.linewidth.normal
+
+ Examples
+ --------
+ >>> d = DualEPS()
+ >>> d.axis_box(xrange=(0,100), yrange=(1e-3,1), ylog=True)
+ >>> d.insert_image("arrow_image.jpg")
+ >>> d.arrow(size=0.2, label="Black Hole!", loc=(0.05, 0.1))
+ >>> d.save_fig()
+ """
+ line = pyx.path.line(self.figsize[0]*loc[0],
+ self.figsize[1]*loc[1],
+ self.figsize[0]*(loc[0]+size),
+ self.figsize[1]*loc[1])
+ self.canvas.stroke(line, [linewidth, color, pyx.deco.earrow()])
+
+
+ if labelloc == "bottom":
+ yoff = -0.1*size
+ valign = pyx.text.valign.top
+ else:
+ yoff = +0.1*size
+ valign = pyx.text.valign.bottom
+ if label != "":
+ self.canvas.text(self.figsize[0]*(loc[0]+0.5*size),
+ self.figsize[1]*(loc[1]+yoff), label,
+ [color, valign, pyx.text.halign.center])
+
+
+
+
+#=============================================================================
+
def scale_line(self, size=0.2, label="", loc=(0.05,0.08), labelloc="top",
color=pyx.color.cmyk.white,
linewidth=pyx.style.linewidth.normal):
@@ -724,6 +784,7 @@
>>> d.scale_line(size=0.2, label="1 kpc", loc=(0.05, 0.1))
>>> d.save_fig()
"""
+
line = pyx.path.line(self.figsize[0]*loc[0],
self.figsize[1]*loc[1],
self.figsize[0]*(loc[0]+size),
@@ -937,7 +998,8 @@
d = DualEPS(figsize=figsize)
count = 0
for j in range(nrow):
- ypos = j*(figsize[1] + margins[1])
+ invj = nrow - j - 1
+ ypos = invj*(figsize[1] + margins[1])
for i in range(ncol):
xpos = i*(figsize[0] + margins[0])
index = j*ncol + i
@@ -1003,7 +1065,8 @@
100.0 * d.canvas.bbox().bottom().t,
100.0 * d.canvas.bbox().top().t - d.figsize[1])
for j in range(nrow):
- ypos0 = j*(figsize[1] + margins[1])
+ invj = nrow - j - 1
+ ypos0 = invj*(figsize[1] + margins[1])
for i in range(ncol):
xpos0 = i*(figsize[0] + margins[0])
index = j*ncol + i
diff -r a077c40cc79a2ef7850116fd6e85287e3a93312f -r 980bb22a8436a2dc0640fce06128075e6d0ed688 yt/visualization/plot_window.py
--- a/yt/visualization/plot_window.py
+++ b/yt/visualization/plot_window.py
@@ -1149,8 +1149,6 @@
self.set_axes_unit(axes_unit)
def _recreate_frb(self):
- if self._frb is not None:
- raise NotImplementedError
super(OffAxisProjectionPlot, self)._recreate_frb()
_metadata_template = """
Repository URL: https://bitbucket.org/yt_analysis/yt/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
More information about the yt-svn
mailing list