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



1524
1525
1526
# File 'generated/google/apis/sheets_v4/classes.rb', line 1524

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



1491
1492
1493
# File 'generated/google/apis/sheets_v4/classes.rb', line 1491

def color
  @color
end

#line_styleGoogle::Apis::SheetsV4::LineStyle

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



1496
1497
1498
# File 'generated/google/apis/sheets_v4/classes.rb', line 1496

def line_style
  @line_style
end

#seriesGoogle::Apis::SheetsV4::ChartData

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



1501
1502
1503
# File 'generated/google/apis/sheets_v4/classes.rb', line 1501

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)


1512
1513
1514
# File 'generated/google/apis/sheets_v4/classes.rb', line 1512

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)


1522
1523
1524
# File 'generated/google/apis/sheets_v4/classes.rb', line 1522

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1529
1530
1531
1532
1533
1534
1535
# File 'generated/google/apis/sheets_v4/classes.rb', line 1529

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