FUIChartFloorplanView
@MainActor
public class FUIChartFloorplanView : FUIDrawingView, FUITitleMultiLineComponent, FUISubtitleMultiLineComponent, FUIStatusMultilineComponent, FUIAxisTitleComponent, FUIAxisLabelComponent, FUISeriesTitleComponent
View implementation of FUIChartFloorplan. Shared by FUIChartFloorplanViewController and FUIChartFloorplanTableViewCell.
Composed of FUIChartTitleView, FUIChartSummaryView, FUIChartPlotView, and FUIChartLegendView. The FUIChartView of the FUIChartPlotView is exposed as a public property, and should be used directly by the developer.
Data Sources
Developer should implement the FUIChartViewDataSource to supply data to the FUIChartView.
Developer should implement the FUIChartSummaryDataSource to supply FUIChartSummaryItem instances to be displayed when users select categories in the chart view.
Delegates
Developer may optionally implement the FUIChartSummaryDelegate, to handle selection of the FUIChartSummaryItem(s).
Usage
self.title = "Sales Chart"
self.chartView.chartType = .bar
self.chartView.numberOfGridlines = 4
self.chartView.dataSource = self
self.summaryView.dataSource = self
self.titleText.text = "Total APE ($) by Salesperson"
self.status.text = "Updated 20m ago"
self.categoryAxisTitle.text = "Salesperson"
self.valuesAxisTitle.text = "Total APE ($)"
let item = FUIChartSummaryItem()
item.categoryIndex = -1
item.isEnabled = false
item.isPreservingTrendHeight = false
let values: [Double] = {
var values: [Double] = []
for series in chartView.series {
let categoriesUpperBound = series.numberOfValues - 1
if let valuesInSeries = series.valuesInCategoryRange((0...categoriesUpperBound), dimension: 0) {
values.append(valuesInSeries.flatMap({ $0 }).reduce(0.0, +))
}
}
return values
}()
let numberFormatter = NumberFormatter()
numberFormatter.numberStyle = .currency
numberFormatter.maximumFractionDigits = 0
item.valuesText = values.map { "\(numberFormatter.string(from: $0 as NSNumber)!)k" }
item.titleText.text = "Team ($) APE"
self.summaryView.addItem(item)
Theming
Supported class paths:
fdlFUIChartFloorplanView_title {}
fdlFUIChartFloorplanView_subtitle {}
fdlFUIChartFloorplanView_status {}
fdlFUIChartFloorplanView_seriesTitles {}
fdlFUIChartFloorplanView_valuesAxisTitle {}
fdlFUIChartFloorplanView_secondaryValuesAxisTitle {}
fdlFUIChartFloorplanView_categoryAxisTitle {}
fdlFUIChartFloorplanView_categoryAxisLabel {}
fdlFUIChartFloorplanView_numericAxisLabel {}
Supported properties:
font-color: Color;
font-style: UIFontTextStyle;
text-line-clamp: Integer;
text-align: NSTextAlignment;
-
Text value for chart
titleDeclaration
Swift
@MainActor public var title: FUIMultiLineText { get } -
The styling for chart
titleDeclaration
Swift
@MainActor public var titleStyleClassPath: [FioriStyle] { get set } -
Text value for chart
subtitleDeclaration
Swift
@MainActor public var subtitle: FUIMultiLineText { get } -
The styling for chart
subtitleDeclaration
Swift
@MainActor public var subtitleStyleClassPath: [FioriStyle] { get set } -
Text value for chart
statusDeclaration
Swift
@MainActor public var status: FUIMultiLineText { get } -
The styling for the
statusDeclaration
Swift
@MainActor public var statusStyleClassPath: [FioriStyle] { get set } -
Text value for chart
valuesAxisTitleDeclaration
Swift
@MainActor public var valuesAxisTitle: FUIText { get } -
Text value for chart
secondaryValuesAxisTitleDeclaration
Swift
@MainActor public var secondaryValuesAxisTitle: FUIText { get } -
The styling for the
valueAxisTitleDeclaration
Swift
@MainActor public var valuesAxisTitleStyleClassPath: [FioriStyle] { get set } -
The styling for the
secondaryValuesAxisTitleDeclaration
Swift
@MainActor public var secondaryValuesAxisTitleStyleClassPath: [FioriStyle] { get set } -
Text to be displayed as the
categoryAxisTitleDeclaration
Swift
@MainActor public var categoryAxisTitle: FUIText { get } -
The styling for the
categoryAxisTitleDeclaration
Swift
@MainActor public var categoryAxisTitleStyleClassPath: [FioriStyle] { get set } -
The styling for the
categoryAxisLabelDeclaration
Swift
@MainActor public var categoryAxisLabelStyleClassPath: [FioriStyle] { get set } -
The styling for the
numericAxisLabelDeclaration
Swift
@MainActor public var numericAxisLabelStyleClassPath: [FioriStyle] { get set } -
Flag for setting if should enable series selection when legend for series is tapped.
Declaration
Swift
@MainActor public var allowLegendViewSeriesSelection: Bool { get set } -
Text to be displayed as the
seriesTitlesDeclaration
Swift
@MainActor public var seriesTitles: [FUIText] { get set } -
The attributed text for the
seriesTitlesDeclaration
Swift
@MainActor public var seriesTitlesAttributedText: NSAttributedString! { get set } -
Declaration
Swift
@MainActor public var seriesTitlesStyleClassPath: [FioriStyle] { get set } -
The styling for the
seriesTitleDeclaration
Swift
@MainActor override public var styleClassForPropertyRef: [FUIPropertyRef : [FUIStyleClassSource : FUIStyleType]] { get set } -
Background color scheme for the chart
Declaration
Swift
@available(*, deprecated, message: "Will be unavailble in newer SDK version.") @MainActor override open var backgroundColorScheme: FUIBackgroundColorScheme { get set } -
Cached attributes for the chart components
Declaration
Swift
@MainActor override public var cachedAttributes: [FUIPropertyRef : [FUIStyleClassSource : [NSAttributedStringKey : Any]]] { get set } -
Summary view for category data
Declaration
Swift
@MainActor public internal(set) var summaryView: FUIChartSummaryView! { get } -
Legend view for chart
Declaration
Swift
@MainActor public internal(set) var legendView: FUIChartLegendView { get } -
View containing the chart and plotted points
Declaration
Swift
@MainActor public var chartView: FUIChartView { get }