Simon Kiss
2010-May-12 09:34 UTC
[R] Finding different hues for a mosaic plot compatible with grayscale printing
I'm working with the following code below to generate a how do I set the h,c, and l values such that the significant, positive residuals appear different on a grayscale printer from significant grayscale residuals. The challenge as I see it is that one can only distinguish the positive and negative residuals with the hue/. Varying the chroma and the luminance only affect the distinctions between large and small and significant and non significant. But my positive and negative residuals are both large (absolutely) and significant, meaning that they will have the same chroma and luminosity, but different hues. I guess the key here is to find two separate hue values that appear substantially different *on a grayscale printer* at the same chroma and luminance. I have read through Zeileis et al. (2007, 2008) but can't quite find the answer there. I have also tried the Friendly shading to vary the line type, but I can't find line types that are different enough to communicate the difference between positive and negative residuals clearly. Your assistance is appreciated. >mosaic(~educ+trade_off_scaled, shade=TRUE, main="Support For Environmental Protection At The Expense of Creating Jobs By Education", gp=shading_hcl(CST17$observed, CST17$expected, ASR17, df=6, h=c(260,0), c=c(100,0), l=c(90,0)), labeling_args=list(rot_labels=c(25,90,0,0), offset_labels=c(1,0,0,2), offset_varnames=c(2,0,0,4), set_varnames=c(trade_off_scaled="Protecting The Environment Is More Important Than Creating Jobs", educ="Level of Education"))) ********************************* Simon J. Kiss, PhD SSHRC and DAAD Post-Doctoral Fellow John F. Kennedy Institute of North America Studies Free University of Berlin Lansstra?e 7-9 14195 Berlin, Germany Cell: +49 (0)1525-300-2812, Web: http://www.jfki.fu-berlin.de/index.html
Jim Lemon
2010-May-12 12:42 UTC
[R] Finding different hues for a mosaic plot compatible with grayscale printing
On 05/12/2010 07:34 PM, Simon Kiss wrote:> I'm working with the following code below to generate a > how do I set the h,c, and l values such that the significant, positive > residuals appear different on a grayscale printer from significant > grayscale residuals. The challenge as I see it is that one can only > distinguish the positive and negative residuals with the hue/. Varying > the chroma and the luminance only affect the distinctions between large > and small and significant and non significant. But my positive and > negative residuals are both large (absolutely) and significant, meaning > that they will have the same chroma and luminosity, but different hues. > I guess the key here is to find two separate hue values that appear > substantially different *on a grayscale printer* at the same chroma and > luminance. I have read through Zeileis et al. (2007, 2008) but can't > quite find the answer there. > I have also tried the Friendly shading to vary the line type, but I > can't find line types that are different enough to communicate the > difference between positive and negative residuals clearly. > > Your assistance is appreciated. > > >mosaic(~educ+trade_off_scaled, shade=TRUE, main="Support For > Environmental Protection At The Expense of Creating Jobs By Education", > gp=shading_hcl(CST17$observed, CST17$expected, ASR17, df=6, h=c(260,0), > c=c(100,0), l=c(90,0)), labeling_args=list(rot_labels=c(25,90,0,0), > offset_labels=c(1,0,0,2), offset_varnames=c(2,0,0,4), > set_varnames=c(trade_off_scaled="Protecting The Environment Is More > Important Than Creating Jobs", educ="Level of Education"))) >Hi Simon, I thought that the symbolbox function might do something useful, but it required a bit of modification. The attached mod allows the user to fill a rectangle with symbols, which includes things like "+" and "-". Jim -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: symbolbox.R URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20100512/e4828caf/attachment.pl>
Achim Zeileis
2010-May-13 09:24 UTC
[R] Finding different hues for a mosaic plot compatible with grayscale printing
On Wed, 12 May 2010, Simon Kiss wrote:> I'm working with the following code below to generate a > how do I set the h,c, and l values such that the significant, positive > residuals appear different on a grayscale printer from significant grayscale > residuals. The challenge as I see it is that one can only distinguish the > positive and negative residuals with the hue/. Varying the chroma and the > luminance only affect the distinctions between large and small and > significant and non significant. But my positive and negative residuals are > both large (absolutely) and significant, meaning that they will have the same > chroma and luminosity, but different hues. > I guess the key here is to find two separate hue values that appear > substantially different *on a grayscale printer* at the same chroma and > luminance. I have read through Zeileis et al. (2007, 2008) but can't quite > find the answer there. > I have also tried the Friendly shading to vary the line type, but I can't > find line types that are different enough to communicate the difference > between positive and negative residuals clearly.This is difficult. In grayscale printing you have just one dimension available for color shading, namely the luminance/brightness. This is already used for the size of the residuals and so you need something else to code the sign. In our HCL palettes this is done by the hue but in such a way that the choice of hue does not change the luminance (this is the excellent feature of HCL color space). So, as Jim already pointed out, you can just do something about the type of filling or the borders etc. Another option would be to use a single grayscale with dark colors for large positive residuals and bright colors for large negative residuals (or vice versa). However, none of the approaches will be very intuitive and the color version will be much more powerful. If you are forced to use grayscale, you might consider putting an assocation plot (via function assoc()) next to the mosaic plot. Best, Z> Your assistance is appreciated. > >> mosaic(~educ+trade_off_scaled, shade=TRUE, main="Support For Environmental >> Protection At The Expense of Creating Jobs By Education", >> gp=shading_hcl(CST17$observed, CST17$expected, ASR17, df=6, h=c(260,0), >> c=c(100,0), l=c(90,0)), labeling_args=list(rot_labels=c(25,90,0,0), >> offset_labels=c(1,0,0,2), offset_varnames=c(2,0,0,4), >> set_varnames=c(trade_off_scaled="Protecting The Environment Is More >> Important Than Creating Jobs", educ="Level of Education"))) > > ********************************* > Simon J. Kiss, PhD > SSHRC and DAAD Post-Doctoral Fellow > John F. Kennedy Institute of North America Studies > Free University of Berlin > Lansstra?e 7-9 > 14195 Berlin, Germany > Cell: +49 (0)1525-300-2812, > Web: http://www.jfki.fu-berlin.de/index.html > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.