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



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

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



1236
1237
1238
# File 'generated/google/apis/sheets_v4/classes.rb', line 1236

def color
  @color
end

#line_styleGoogle::Apis::SheetsV4::LineStyle

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



1241
1242
1243
# File 'generated/google/apis/sheets_v4/classes.rb', line 1241

def line_style
  @line_style
end

#seriesGoogle::Apis::SheetsV4::ChartData

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



1246
1247
1248
# File 'generated/google/apis/sheets_v4/classes.rb', line 1246

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)


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

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)


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

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1274
1275
1276
1277
1278
1279
1280
# File 'generated/google/apis/sheets_v4/classes.rb', line 1274

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