# [Xy-pic] Re: A question about Xy-pic

Ross Moore ross at ics.mq.edu.au
Tue Aug 19 14:50:34 CEST 2003

Hello Ben,

On Tue, 19 Aug 2003, Ben Whale wrote:

> Dear Dr Moore
>    My name is Ben Whale, I am an honours student at the ANU and need some
> help with type setting a diagram.  Imagine, if you will a xymatrix of 3
> columns and rows thus;
>    a'   a   a''
>    b'   b   b''
>    c'   c   c''
> There are arrows going up and to the right so,
>
>    a'---> a ---> a''
>    ^      ^      ^
>    |      |      |
>    b'---> b ---> b'' etc..
>
> Now over this I wish to draw a circle around some of the entries, for
> example the bottom row and the middle entry of the middle row.
>
> My question is this How?

The following example shows 3 ways of putting frames into diagrams
constructed using \xymatrix :

\usepackage[dvips,all,frame]{xy}

\$\$
\xymatrix{
a'\ar[r] & a\ar[r] & a'' \\
b'\ar[u]\ar[r] &*++[Fo]{b}
\ar[u]\ar[r] & b''\ar[u] \\
c'\ar[u]\ar[r] & c\ar[u]\ar[r] & c''\ar[u] \\
\save"1,1"*+\frm{o}\restore
\save"3,1"."3,3"!C*+\frm{e}\restore
}
\$\$

The concepts used are:
1.  cells in a matrix are automatically named, for later reuse
2.  dropping the cell contents as an <object> with modifiers
3.  merging known locations to create a new \POS to be framed

>
> I've looked through both the Xy-pic user guide and refference manual, both
> of them tell me how to draw frames around individual entries, or even how
> to group objects together, but how to do this without covering over the
> arrows?

Is this what you mean ?

\$\$
\xymatrix{
a'\ar[r] & a\ar[r] & a'' \\
b'\ar[u]\ar[r] &*++[Fo]{b}
\ar[u]\ar[r] & b''\ar[u] \\
c'\ar[r] & c\ar[r] & c'' \\
\save"1,1"*+\frm{o}\restore
\save"3,1"."3,3"!C,*+\frm{e},*+\frm{}="M3"
,"3,2"."M3",\ar"2,2"\restore
\save"3,1"."M3",\ar"2,1"\restore
\save"3,3"."M3"="M3",\ar"2,3"\restore
}
\$\$

>
> Sincerely yours,
> Ben Whale
>
> P.S. I'm sure you get alot of emails like this, so thankyou so much for
> taking the time to answer mine.
>

I've sent this reply to the  Xy-pic mailing list at tug.org .
This lightens the load on a single individual.
Perhaps you should join it.

Cheers

Ross Moore