Joseph,
I don't know if you are still interested in this problem, but here is one
way which I think works.
Replacing lines 360-374 in dotplot with:
(scatter `yc' `xc', ///
`yvarfmt' ///
msymbol(. `barsyms' `ymsym') ///
`barlabs' ///
`barlpos' ///
ylabel(, nogrid) ///
xlabel(, nogrid) ///
ytitle(`"`yttl'"') ///
xtitle(`"`xttl'"') ///
xscale(range(`x0' `x1')) ///
`xlabel' ///
legend(nodraw) /// no legend
`xlog' `ylog' ///
`options' ///
) || ///
(line `ymvar' `xc' if `x' == 1, clc(black) clw(medthin) ) || ///
(line `ymvar' `xc' if `x' == 2, clc(black) clw(medthin) ) || ///
(line `ymvar' `xc' if `x' == 3, clc(black) clw(medthin) ) || ///
(line `yb1' `xc' if `x' == 1, clc(black) clw(medthin) clpat(vshortdash)) ||
///
(line `yb1' `xc' if `x' == 2, clc(black) clw(medthin) clpat(vshortdash) ) ||
///
(line `yb1' `xc' if `x' == 3, clc(black) clw(medthin) clpat(vshortdash) ) ||
///
(line `yb2' `xc' if `x' == 1, clc(black) clw(medthin) clpat(vshortdash) ) ||
///
(line `yb2' `xc' if `x' == 2, clc(black) clw(medthin) clpat(vshortdash) ) ||
///
(line `yb2' `xc' if `x' == 3, clc(black) clw(medthin) clpat(vshortdash) )
It is not a generalized solution, but is seems to work.
Hope this helps,
Scott
> -----Original Message-----
> From: [email protected] [mailto:owner-
> [email protected]] On Behalf Of Joseph Coveney
> Sent: Wednesday, January 05, 2005 5:18 PM
> To: Statalist
> Subject: st: Controlling markers (symbols) for median and bar lines in -
> dotplot-
>
> I'm using -dotplot- (comparative scatterplot) with multiple variables
> (second
> syntax) and using the options for median lines and shoulder bars. If I
> don't
> specify the marker symbols, the median lines appear as three plus sign
> markers
> and the shoulder bars appear as three minus sign markers. If I do specify
> the
> marker symbols for the data points, the median bars and shoulder lines
> appear
> as that marker symbol shape in motley colors. These lines appear to be
> overlaid plots using the next color in the scheme-stipulated sequence of
> colors
> for successive plots.
>
> I would like for the median lines and shoulder bars to appear as solid
> black
> lines and dashed black lines, respectively. I've checked the manual and
> on-
> line help, and even glanced at the ado-file. There was a thread on -
> dotplot-
> on Statalist last October, but it wasn't about this problem.
>
> How can I get -dotplot- to use connecting lines instead of marker symbols
> for
> the median lines and shoulder lines? Absent that, how can I specify that
> the
> scatterplots for the median lines and shoulder lines revert to plus-sign
> symbols and minus-sign symbols when I specify marker symbols for the data
> points?
>
> Joseph Coveney
>
> clear
> set more off
> set obs 10
> forvalues i = 1/3 {
> generate float sco`i' = 10 * invnorm(uniform()) + `i' * 10
> }
> * Not specifying marker symbol--get plus/minus signs for lines
> dotplot sco1 sco2 sco3, median bar center ///
> msize(medium) mcolor(black) ///
> ytitle(Score) ylabel(, angle(horizontal)) ///
> xtitle(Group) xlabel( 1 "Control" 2 "Low" 3 "High") ///
> legend(off)
> * Specifying the marker symbol--get marker symbol for lines
> dotplot sco1 sco2 sco3, median bar center ///
> msymbol(circle) msize(medium) mcolor(black) ///
> ytitle(Score) ylabel(, angle(horizontal)) ///
> xtitle(Group) xlabel( 1 "Control" 2 "Low" 3 "High") ///
> legend(off)
> exit
>
*
* For searches and help try:
* http://www.stata.com/support/faqs/res/findit.html
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/