Click or drag to resize
OSIsoft, LLC

AFSearchFrequencyDistribution Method

Generates a frequency distribution for the specified items.

Namespace:  OSIsoft.AF.Search
Assembly:  OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 2.10.6.195
Syntax
public AFGroupedResult<Object> FrequencyDistribution(
	string groupedField
)

Parameters

groupedField
Type: SystemString
The field whose value should be grouped.

Return Value

Type: AFGroupedResultObject
A result containing the requested frequency distribution or an error if the summaries could not be performed.
Examples
// Get the Database
PISystems myPISystems = new PISystems();
PISystem myPISystem = myPISystems.DefaultPISystem;
if (myPISystem == null)
    throw new InvalidOperationException("Default PISystem was not found.");
AFDatabase myDB = myPISystem.Databases[dbName];
if (myDB == null)
    throw new InvalidOperationException("Database was not found.");

// Create a search to find all the event frames created from the 'Event'
// template in the last year.
using (AFEventFrameSearch eventSearch = new AFEventFrameSearch(myDB, "EventFrameSearch", @"Template:'Event' Start:>'t-1y'"))
{
    eventSearch.CacheTimeout = TimeSpan.FromMinutes(10);
    // Generate a frequency distribution by primary element
    AFGroupedResult<object> frequencyDistribution = eventSearch.FrequencyDistribution("Element");
    foreach (var group in frequencyDistribution.GroupedResults)
    {
        Console.WriteLine("Element: {0}, Count: {1}",
            group.Key, group.Value[AFSummaryTypes.Count]);
    }
}
Version Information

AFSDK

Supported in: 2.10.5, 2.10, 2.9.5, 2.9
See Also
Enabling Operational Intelligence