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.
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.