While using PROC GMAP and device=javaimg, the PATTERN statement functionality seems to work partially. For missing values, I have defined the color to be white and when I use device=png,gif,... , it seems to work fine. But when I use device=javaimg, the missing values color changes to other colors. Is there a trick to get around this?
Any chance you are using Options nogstyle? Javaimg doesn't honor that option.
Also are you using the CDEFAULT option if doing a choropleth map?
No, I'm not using OPTIONS NOGSTYLE or CDEFAULT.
Here is the code I'm using:
pattern1 v=s c=white;
pattern2 v=s c=color2;
pattern3 v=s c=color3;
pattern4 v=s c=color4;
goptions hsize=12 vsize=9 device=javaimg;
Proc gmap data=zip map=map;
id zip;
choro rate/discrete missing
annotate=anno
coutline=black
legend=legend1
format rate g&form._as.;
run;
When I run the procedure, SAS ignores the pattern1 which is defined for missing values and puts a new color for missing values in the legends.
Use CDEFAULT as an option to CHORO.
CDEFAULT is not supported by java.
White should be assigned to the first non-missing value, formatted value, level or midpoint option. What value does your format g&form._as assign to missing?
For missing, the value assigned is "." .
Since you don't appear to be requesting a statistic from the value I would try setting the missing to a value way outside your other data (-1e8 or similar) and include that value in your format.
With out seeing a map its hard to tell but I think your comment "missing values color changes to other colors" indicates that missing may be treated differently that an actual value.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.