This document is archived and information here might be outdated.  Recommended version.

BiUniqueValueRenderer Class (ArcObjects .NET 10.8 SDK)
ArcObjects Help for .NET developers > ArcObjects Help for .NET developers > ArcObjects namespaces > Carto > ESRI.ArcGIS.Carto > Classes > B > BiUniqueValueRenderer Class
ArcGIS Developer Help

BiUniqueValueRendererClass Class

A bivariate renderer that combines a unique values renderer with a class breaks renderer (either graduated colors or graduated symbol type symbology).

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


This is a renderer that produces multivariate maps. Unlike maps that produce only one attribute, or characteristic, of the data, multivariate maps display two or more. This renderer produces a bivariate, meaning two variable, reprsentation of feature data. The first variable is categorical, and is symbolized with a UniqueValueRenderer. The second variable is quantitative and is symbolized with a ClassBreaksRenderer. The univariate representations are combined to produce a composite, bivariate representation.

Supported Platforms

Windows, Solaris, Linux


Interfaces Description
IBivariateRenderer Provides access to members that control the rendering of bivariate symbology based on two constiuent renderers.
IExportSupport Provides access to export support members.
IFeatureRenderer Provides access to members that control functionality common to all feature renderers.
ILegendInfo Provides access to members that control legend information provided by a renderer.
IPersist (esriSystem)
IPersistStream (esriSystem)


This renderer could be used, for example, to produce a population map of countries for Africa. The landlocked attribute of each country can be represented by two different colors, and the population of each country can be represented by a graduated symbol whose size shows the country's population.

Use IBivariateRenderer::MainRenderer to specify the primary UniqueValueRenderer. Use IBivariateRenderer::VariationRenderer to specify the secondary, ClassBreaksRenderer.

The ClassBreaksRenderer can be used to produce a graduated color or graduated symbol type representation. In the first case, the colors from the main and variation renderer need to be combined. The hue, saturation, value color system is used for this and the hue is taken from the main renderer and the saturation and value are taken from the symbol from the variation renderer. In the second case, the color is taken from the main renderer, and the size is taken from the variation renderer.