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

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/sheets_v4/classes.rb,
generated/google/apis/sheets_v4/representations.rb,
generated/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

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ BasicChartSeries

Returns a new instance of BasicChartSeries



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

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/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, as well. Note: this proto does not carry information about the absolute color space that should be used to interpret the RGB value (e.g. sRGB, Adobe RGB, DCI-P3, BT.2020, etc.). By default, applications SHOULD assume the sRGB color space. 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



1229
1230
1231
# File 'generated/google/apis/sheets_v4/classes.rb', line 1229

def color
  @color
end

#line_styleGoogle::Apis::SheetsV4::LineStyle

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



1234
1235
1236
# File 'generated/google/apis/sheets_v4/classes.rb', line 1234

def line_style
  @line_style
end

#seriesGoogle::Apis::SheetsV4::ChartData

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



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

def series
  @series
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)


1250
1251
1252
# File 'generated/google/apis/sheets_v4/classes.rb', line 1250

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)


1260
1261
1262
# File 'generated/google/apis/sheets_v4/classes.rb', line 1260

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1267
1268
1269
1270
1271
1272
1273
# File 'generated/google/apis/sheets_v4/classes.rb', line 1267

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