Class: Google::Apis::SheetsV4::BasicChartSeries

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/sheets_v4/classes.rb,
lib/google/apis/sheets_v4/representations.rb,
lib/google/apis/sheets_v4/representations.rb

Overview

A single series of data in a chart. For example, if charting stock prices over time, multiple series may exist, one for the "Open Price", "High Price", "Low Price" and "Close Price".

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BasicChartSeries

Returns a new instance of BasicChartSeries.



1290
1291
1292
# File 'lib/google/apis/sheets_v4/classes.rb', line 1290

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#colorGoogle::Apis::SheetsV4::Color

Represents a color in the RGBA color space. This representation is designed for simplicity of conversion to and from color representations in various languages over compactness. For example, the fields of this representation can be trivially provided to the constructor of java.awt.Color in Java; it can also be trivially provided to UIColor's +colorWithRed:green:blue:alpha method in iOS; and, with just a little work, it can be easily formatted into a CSS rgba() string in JavaScript. This reference page doesn't have information about the absolute color space that should be used to interpret the RGB value—for example, sRGB, Adobe RGB, DCI-P3, and BT.2020. By default, applications should assume the sRGB color space. When color equality needs to be decided, implementations, unless documented otherwise, treat two colors as equal if all their red, green, blue, and alpha values each differ by at most 1e-5. Example (Java): import com.google.type.Color; // ... public static java. awt.Color fromProto(Color protocolor) float alpha = protocolor.hasAlpha() ? protocolor.getAlpha().getValue() : 1.0; return new java.awt.Color( protocolor. getRed(), protocolor.getGreen(), protocolor.getBlue(), alpha); public static Color toProto(java.awt.Color color) float red = (float) color.getRed(); float green = (float) color.getGreen(); float blue = (float) color.getBlue(); float denominator = 255.0; Color.Builder resultBuilder = Color .newBuilder() . setRed(red / denominator) .setGreen(green / denominator) .setBlue(blue / denominator); int alpha = color.getAlpha(); if (alpha != 255) result. setAlpha( FloatValue .newBuilder() .setValue(((float) alpha) / denominator) . build()); return resultBuilder.build(); // ... Example (iOS / Obj-C): // .. . static UIColor* fromProto(Color* protocolor) float red = [protocolor red]; float green = [protocolor green]; float blue = [protocolor blue]; FloatValue* alpha_wrapper = [protocolor alpha]; float alpha = 1.0; if (alpha_wrapper != nil) alpha = [alpha_wrapper value]; return [UIColor colorWithRed:red green: green blue:blue alpha:alpha]; static Color* toProto(UIColor* color) CGFloat red, green, blue, alpha; if (![color getRed:&red green:&green blue:& blue alpha:&alpha]) return nil; Color* result = [[Color alloc] init]; [ result setRed:red]; [result setGreen:green]; [result setBlue:blue]; if (alpha < = 0.9999) [result setAlpha:floatWrapperWithValue(alpha)]; [result autorelease]; return result; // ... Example (JavaScript): // ... var protoToCssColor = function(rgb_color) var redFrac = rgb_color.red || 0.0; var greenFrac = rgb_color.green || 0.0; var blueFrac = rgb_color.blue || 0.0; var red = Math.floor(redFrac * 255); var green = Math.floor(greenFrac * 255); var blue = Math.floor(blueFrac * 255); if (!('alpha' in rgb_color)) return rgbToCssColor(red, green, blue); var alphaFrac = rgb_color.alpha.value || 0. 0; var rgbParams = [red, green, blue].join(','); return ['rgba(', rgbParams, ', ', alphaFrac, ')'].join('');; var rgbToCssColor = function(red, green, blue) var rgbNumber = new Number((red << 16) | (green << 8) | blue); var hexString = rgbNumber.toString(16); var missingZeros = 6 - hexString.length; var resultBuilder = ['#']; for (var i = 0; i < missingZeros; i++) resultBuilder. push('0'); resultBuilder.push(hexString); return resultBuilder.join('');; / / ... Corresponds to the JSON property color



1239
1240
1241
# File 'lib/google/apis/sheets_v4/classes.rb', line 1239

def color
  @color
end

#color_styleGoogle::Apis::SheetsV4::ColorStyle

A color value. Corresponds to the JSON property colorStyle



1244
1245
1246
# File 'lib/google/apis/sheets_v4/classes.rb', line 1244

def color_style
  @color_style
end

#data_labelGoogle::Apis::SheetsV4::DataLabel

Settings for one set of data labels. Data labels are annotations that appear next to a set of data, such as the points on a line chart, and provide additional information about what the data represents, such as a text representation of the value behind that point on the graph. Corresponds to the JSON property dataLabel



1252
1253
1254
# File 'lib/google/apis/sheets_v4/classes.rb', line 1252

def data_label
  @data_label
end

#line_styleGoogle::Apis::SheetsV4::LineStyle

Properties that describe the style of a line. Corresponds to the JSON property lineStyle



1257
1258
1259
# File 'lib/google/apis/sheets_v4/classes.rb', line 1257

def line_style
  @line_style
end

#point_styleGoogle::Apis::SheetsV4::PointStyle

The style of a point on the chart. Corresponds to the JSON property pointStyle



1262
1263
1264
# File 'lib/google/apis/sheets_v4/classes.rb', line 1262

def point_style
  @point_style
end

#seriesGoogle::Apis::SheetsV4::ChartData

The data included in a domain or series. Corresponds to the JSON property series



1267
1268
1269
# File 'lib/google/apis/sheets_v4/classes.rb', line 1267

def series
  @series
end

#style_overridesArray<Google::Apis::SheetsV4::BasicSeriesDataPointStyleOverride>

Style override settings for series data points. Corresponds to the JSON property styleOverrides



1272
1273
1274
# File 'lib/google/apis/sheets_v4/classes.rb', line 1272

def style_overrides
  @style_overrides
end

#target_axisString

The minor axis that will specify the range of values for this series. For example, if charting stocks over time, the "Volume" series may want to be pinned to the right with the prices pinned to the left, because the scale of trading volume is different than the scale of prices. It is an error to specify an axis that isn't a valid minor axis for the chart's type. Corresponds to the JSON property targetAxis

Returns:

  • (String)


1281
1282
1283
# File 'lib/google/apis/sheets_v4/classes.rb', line 1281

def target_axis
  @target_axis
end

#typeString

The type of this series. Valid only if the chartType is COMBO. Different types will change the way the series is visualized. Only LINE, AREA, and COLUMN are supported. Corresponds to the JSON property type

Returns:

  • (String)


1288
1289
1290
# File 'lib/google/apis/sheets_v4/classes.rb', line 1288

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
# File 'lib/google/apis/sheets_v4/classes.rb', line 1295

def update!(**args)
  @color = args[:color] if args.key?(:color)
  @color_style = args[:color_style] if args.key?(:color_style)
  @data_label = args[:data_label] if args.key?(:data_label)
  @line_style = args[:line_style] if args.key?(:line_style)
  @point_style = args[:point_style] if args.key?(:point_style)
  @series = args[:series] if args.key?(:series)
  @style_overrides = args[:style_overrides] if args.key?(:style_overrides)
  @target_axis = args[:target_axis] if args.key?(:target_axis)
  @type = args[:type] if args.key?(:type)
end