Instead of outlines to indicate the irrigated areas you should use something like a transparent fill pattern (e.g. lines, hachures). An example would look similar to this:
![http://www.geog.fu-berlin.de/de/Karto/umn_karten/bilder/komb2.png](https://i.stack.imgur.com/CE8V4.png)
or just google "map fill patterns" to get an overview of the options. Using outlines only for the irrigated areas would give the impression that irrigation is not a continous phenomenon.
You are correct, ArcGIS is not set up to natively do this. It's workable to do it with two, and you might get away with three variables but I have a feeling you're going to want to do it in Illustrator or another third party program to get it to look nice. The primary issue is the way ArcGIS handles transparency - there is only one method available, which means layers on top have a disproportionate effect on lower layers. Also, you have to pretty much manually create your legend and the more classes you have the messier this will get.
For consistency the way to do this (and follow your example above) would be to determine three classes/vote count thresholds. You'll then add a short int field to your data called 'transp' or something like that. For all candidates, select every record of one class (ie all 30% or less records) and then add a transparency percentage to your new field no less than say 20. This will get you intense but still transparent color for high votes, a little less intense and more transparent for middle, and so on.
Now add your data three times to your map. You'll symbolize each of them with a single color (say red green blue) based only on the classification of one candidates results - the others will be unsymbolized and you'll disable the 'other values' class. To enable the transparency, click the Advanced drop-down on the symbology tab and choose transparency, then select your 'transp' field.
Now you've got your multivariate map and you can see the issues with transparency depending on which one is on top. There's going to be some pretty muddy looking colors too. You may be able to play with the method and get decent looking colors but it would be much easier in something like Illustrator. Note, there are also suggestions to convert everything to raster and do it that way, which I won't cover.
As far as building your legend, the easiest way is to go off the side of your map and what would be visible in the dataframe (or something so small it wouldn't be seen) and draw nine new squares/rectangles/whatever records. You can do this IN your data, or you could create a new featureclass to hold it and duplicate your symbology. I'll assume the triangles. Your least transparent/most intense colors go at the points. So does a copy of your most transparent/least intense colors from the other two candidates. Your middle classes go in the middle, again stacked. Then you fill in the center of the triangle with the appropriate combinations. Hopefully that all makes sense if you refer back to your example above. You then insert a second dataframe in your layout and manually place some text labels.
This is one method. There are several approaches and I think even a couple of custom written tools out there. I suggest Googling "arcgis multivariate choropleth" and checking out the results. Or bivariate as well. There are at least two good youtube videos and a relevant ESRI presentation on the subject.
Best Answer
ArcScene is the ESRI approach to doing this. It is likely installed with ArcGIS so you should find it in the start menu.
This is a typical ArcScene map. Basically your attribute value can become the extrusion, you often need to normalize data.