VTK  9.1.0
vtkXYPlotActor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkXYPlotActor.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
107 #ifndef vtkXYPlotActor_h
108 #define vtkXYPlotActor_h
109 
110 #define VTK_XYPLOT_INDEX 0
111 #define VTK_XYPLOT_ARC_LENGTH 1
112 #define VTK_XYPLOT_NORMALIZED_ARC_LENGTH 2
113 #define VTK_XYPLOT_VALUE 3
114 
115 #define VTK_XYPLOT_ROW 0
116 #define VTK_XYPLOT_COLUMN 1
117 
118 #define VTK_XYPLOT_Y_AXIS_TOP 0
119 #define VTK_XYPLOT_Y_AXIS_HCENTER 1
120 #define VTK_XYPLOT_Y_AXIS_VCENTER 2 // rotate by 90 degrees (y-axis aligned)
121 
122 #include "vtkActor2D.h"
123 #include "vtkRenderingAnnotationModule.h" // For export macro
124 #include "vtkSmartPointer.h" // For SP
125 
126 class vtkXYPlotActorConnections;
127 class vtkAlgorithmOutput;
128 class vtkAppendPolyData;
129 class vtkAxisActor2D;
130 class vtkDataObject;
132 class vtkDataSet;
134 class vtkDoubleArray;
135 class vtkGlyph2D;
136 class vtkGlyphSource2D;
137 class vtkIntArray;
138 class vtkLegendBoxActor;
139 class vtkPlanes;
140 class vtkPolyData;
141 class vtkPolyDataMapper2D;
142 class vtkTextActor;
143 class vtkTextMapper;
144 class vtkTextProperty;
145 
146 class VTKRENDERINGANNOTATION_EXPORT vtkXYPlotActor : public vtkActor2D
147 {
148 public:
149  vtkTypeMacro(vtkXYPlotActor, vtkActor2D);
150  void PrintSelf(ostream& os, vtkIndent indent) override;
151 
158  static vtkXYPlotActor* New();
159 
160  //---Data Set Input----------------------------------------------------------
161  // The following methods are used to plot input datasets. Datasets
162  // will be plotted if set as input; otherwise the input data objects
163  // will be plotted (if defined).
164 
166 
174  void AddDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
175  void AddDataSetInput(vtkDataSet* ds) { this->AddDataSetInput(ds, nullptr, 0); }
176  void AddDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
178  {
179  this->AddDataSetInputConnection(in, nullptr, 0);
180  }
182 
184 
187  void RemoveDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
188  void RemoveDataSetInput(vtkDataSet* ds) { this->RemoveDataSetInput(ds, nullptr, 0); }
189  void RemoveDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
191  {
192  this->RemoveDataSetInputConnection(in, nullptr, 0);
193  }
195 
201 
203 
207  void SetPointComponent(int i, int comp);
208  int GetPointComponent(int i);
209  //---end Data Set Input-----------------------------------------------------
211 
213 
223  vtkSetClampMacro(XValues, int, VTK_XYPLOT_INDEX, VTK_XYPLOT_VALUE);
224  vtkGetMacro(XValues, int);
225  void SetXValuesToIndex() { this->SetXValues(VTK_XYPLOT_INDEX); }
226  void SetXValuesToArcLength() { this->SetXValues(VTK_XYPLOT_ARC_LENGTH); }
228  void SetXValuesToValue() { this->SetXValues(VTK_XYPLOT_VALUE); }
229  const char* GetXValuesAsString();
231 
232  //---Data Object Input------------------------------------------------------
233  // The following methods are used to plot input data objects. Datasets will
234  // be plotted in preference to data objects if set as input; otherwise the
235  // input data objects will be plotted (if defined).
236 
238 
244 
246 
252 
254 
259  vtkSetClampMacro(DataObjectPlotMode, int, VTK_XYPLOT_ROW, VTK_XYPLOT_COLUMN);
260  vtkGetMacro(DataObjectPlotMode, int);
261  void SetDataObjectPlotModeToRows() { this->SetDataObjectPlotMode(VTK_XYPLOT_ROW); }
262  void SetDataObjectPlotModeToColumns() { this->SetDataObjectPlotMode(VTK_XYPLOT_COLUMN); }
265 
267 
275  void SetDataObjectXComponent(int i, int comp);
278 
280 
288  void SetDataObjectYComponent(int i, int comp);
290  //---end Data Object Input--------------------------------------------------
292 
293  //---Per Curve Properties---------------------------------------------------
294  // The following methods are used to set properties on each curve that is
295  // plotted. Each input dataset (or data object) results in one curve. The
296  // methods that follow have an index i that corresponds to the input dataset
297  // or data object.
298  void SetPlotColor(int i, double r, double g, double b);
299  void SetPlotColor(int i, const double color[3])
300  {
301  this->SetPlotColor(i, color[0], color[1], color[2]);
302  }
303  double* GetPlotColor(int i) VTK_SIZEHINT(3);
304  void SetPlotSymbol(int i, vtkPolyData* input);
306  void SetPlotLabel(int i, const char* label);
307  const char* GetPlotLabel(int i);
308 
309  // Allow per-curve specification of line and point rendering. These override
310  // global settings PlotPoints and PlotLines. If not on, the default behavior
311  // is governed by PlotPoints and PlotLines ivars.
312  vtkGetMacro(PlotCurvePoints, vtkTypeBool);
313  vtkSetMacro(PlotCurvePoints, vtkTypeBool);
314  vtkBooleanMacro(PlotCurvePoints, vtkTypeBool);
315 
316  vtkGetMacro(PlotCurveLines, vtkTypeBool);
317  vtkSetMacro(PlotCurveLines, vtkTypeBool);
318  vtkBooleanMacro(PlotCurveLines, vtkTypeBool);
319 
320  void SetPlotLines(int i, int);
321  int GetPlotLines(int i);
322 
323  void SetPlotPoints(int i, int);
324  int GetPlotPoints(int i);
325  //---end Per Curve Properties-----------------------------------------------
326 
328 
332  vtkSetMacro(ExchangeAxes, vtkTypeBool);
333  vtkGetMacro(ExchangeAxes, vtkTypeBool);
334  vtkBooleanMacro(ExchangeAxes, vtkTypeBool);
336 
338 
343  vtkSetMacro(ReverseXAxis, vtkTypeBool);
344  vtkGetMacro(ReverseXAxis, vtkTypeBool);
345  vtkBooleanMacro(ReverseXAxis, vtkTypeBool);
347 
349 
354  vtkSetMacro(ReverseYAxis, vtkTypeBool);
355  vtkGetMacro(ReverseYAxis, vtkTypeBool);
356  vtkBooleanMacro(ReverseYAxis, vtkTypeBool);
358 
360 
366  vtkGetObjectMacro(LegendActor, vtkLegendBoxActor);
367  vtkGetObjectMacro(GlyphSource, vtkGlyphSource2D);
369 
371 
374  vtkSetStringMacro(Title);
375  vtkGetStringMacro(Title);
377 
379 
382  vtkSetStringMacro(XTitle);
383  vtkGetStringMacro(XTitle);
385 
387 
390  virtual void SetYTitle(const char*);
391  char* GetYTitle();
393 
395 
399  vtkAxisActor2D* GetXAxisActor2D() { return this->XAxis; }
400  vtkAxisActor2D* GetYAxisActor2D() { return this->YAxis; }
402 
404 
412  vtkSetVector2Macro(XRange, double);
413  vtkGetVectorMacro(XRange, double, 2);
414  vtkSetVector2Macro(YRange, double);
415  vtkGetVectorMacro(YRange, double, 2);
416  void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
417  {
418  this->SetXRange(xmin, xmax);
419  this->SetYRange(ymin, ymax);
420  }
422 
424 
430  vtkSetClampMacro(NumberOfXLabels, int, 0, 50);
431  vtkGetMacro(NumberOfXLabels, int);
432  vtkSetClampMacro(NumberOfYLabels, int, 0, 50);
433  vtkGetMacro(NumberOfYLabels, int);
434  void SetNumberOfLabels(int num)
435  {
436  this->SetNumberOfXLabels(num);
437  this->SetNumberOfYLabels(num);
438  }
440 
442 
449  void SetAdjustXLabels(int adjust);
450  vtkGetMacro(AdjustXLabels, int);
451  void SetAdjustYLabels(int adjust);
452  vtkGetMacro(AdjustYLabels, int);
454 
456 
459  void SetNumberOfXMinorTicks(int num);
461  void SetNumberOfYMinorTicks(int num);
464 
466 
471  vtkSetMacro(Legend, vtkTypeBool);
472  vtkGetMacro(Legend, vtkTypeBool);
473  vtkBooleanMacro(Legend, vtkTypeBool);
475 
477 
481  vtkSetVector2Macro(TitlePosition, double);
482  vtkGetVector2Macro(TitlePosition, double);
484 
486 
490  vtkSetMacro(AdjustTitlePosition, vtkTypeBool);
491  vtkGetMacro(AdjustTitlePosition, vtkTypeBool);
492  vtkBooleanMacro(AdjustTitlePosition, vtkTypeBool);
494 
496  {
497  AlignLeft = 0x1,
498  AlignRight = 0x2,
499  AlignHCenter = 0x4,
500  AlignTop = 0x10,
501  AlignBottom = 0x20,
502  AlignVCenter = 0x40,
503  AlignAxisLeft = 0x100,
504  AlignAxisRight = 0x200,
505  AlignAxisHCenter = 0x400,
506  AlignAxisTop = 0x1000,
507  AlignAxisBottom = 0x2000,
508  AlignAxisVCenter = 0x4000
509  };
510 
512 
519  vtkSetMacro(AdjustTitlePositionMode, int);
520  vtkGetMacro(AdjustTitlePositionMode, int);
522 
524 
532  vtkSetVector2Macro(LegendPosition, double);
533  vtkGetVector2Macro(LegendPosition, double);
534  vtkSetVector2Macro(LegendPosition2, double);
535  vtkGetVector2Macro(LegendPosition2, double);
537 
539 
543  vtkGetObjectMacro(TitleTextProperty, vtkTextProperty);
545 
547 
552  vtkGetObjectMacro(AxisTitleTextProperty, vtkTextProperty);
554 
556 
561  vtkGetObjectMacro(AxisLabelTextProperty, vtkTextProperty);
563 
565 
568  vtkSetMacro(Logx, vtkTypeBool);
569  vtkGetMacro(Logx, vtkTypeBool);
570  vtkBooleanMacro(Logx, vtkTypeBool);
572 
574 
578  virtual void SetLabelFormat(const char*);
579  const char* GetLabelFormat() { return this->GetXLabelFormat(); }
581 
583 
586  virtual void SetXLabelFormat(const char*);
587  vtkGetStringMacro(XLabelFormat);
589 
591 
594  virtual void SetYLabelFormat(const char*);
595  vtkGetStringMacro(YLabelFormat);
597 
599 
603  vtkSetClampMacro(Border, int, 0, 50);
604  vtkGetMacro(Border, int);
606 
608 
613  vtkGetMacro(PlotPoints, vtkTypeBool);
614  vtkSetMacro(PlotPoints, vtkTypeBool);
615  vtkBooleanMacro(PlotPoints, vtkTypeBool);
617 
619 
623  vtkGetMacro(PlotLines, vtkTypeBool);
624  vtkSetMacro(PlotLines, vtkTypeBool);
625  vtkBooleanMacro(PlotLines, vtkTypeBool);
627 
629 
634  vtkSetClampMacro(GlyphSize, double, 0.0, 0.2);
635  vtkGetMacro(GlyphSize, double);
637 
642  void ViewportToPlotCoordinate(vtkViewport* viewport, double& u, double& v);
643 
645 
651  vtkSetVector2Macro(PlotCoordinate, double);
652  vtkGetVector2Macro(PlotCoordinate, double);
654 
658  void PlotToViewportCoordinate(vtkViewport* viewport, double& u, double& v);
659 
661 
668  vtkSetVector2Macro(ViewportCoordinate, double);
669  vtkGetVector2Macro(ViewportCoordinate, double);
671 
676  int IsInPlot(vtkViewport* viewport, double u, double v);
677 
679 
683  vtkSetMacro(ChartBox, vtkTypeBool);
684  vtkGetMacro(ChartBox, vtkTypeBool);
685  vtkBooleanMacro(ChartBox, vtkTypeBool);
687 
689 
693  vtkSetMacro(ChartBorder, vtkTypeBool);
694  vtkGetMacro(ChartBorder, vtkTypeBool);
695  vtkBooleanMacro(ChartBorder, vtkTypeBool);
697 
701  vtkProperty2D* GetChartBoxProperty() { return this->ChartBoxActor->GetProperty(); }
702 
704 
707  vtkSetMacro(ShowReferenceXLine, vtkTypeBool);
708  vtkGetMacro(ShowReferenceXLine, vtkTypeBool);
709  vtkBooleanMacro(ShowReferenceXLine, vtkTypeBool);
711 
713 
716  vtkSetMacro(ReferenceXValue, double);
717  vtkGetMacro(ReferenceXValue, double);
719 
721 
724  vtkSetMacro(ShowReferenceYLine, vtkTypeBool);
725  vtkGetMacro(ShowReferenceYLine, vtkTypeBool);
726  vtkBooleanMacro(ShowReferenceYLine, vtkTypeBool);
728 
730 
733  vtkSetMacro(ReferenceYValue, double);
734  vtkGetMacro(ReferenceYValue, double);
736 
740  vtkMTimeType GetMTime() override;
741 
745  void PrintAsCSV(ostream& os);
746 
748 
754  int RenderOverlay(vtkViewport*) override;
755  int RenderTranslucentPolygonalGeometry(vtkViewport*) override { return 0; }
757 
762 
769 
771 
777 
779 
782  vtkSetMacro(YTitlePosition, int);
783  vtkGetMacro(YTitlePosition, int);
784  void SetYTitlePositionToTop() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_TOP); }
785  void SetYTitlePositionToHCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_HCENTER); }
786  void SetYTitlePositionToVCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_VCENTER); }
788 
790 
793  virtual void SetPlotGlyphType(int, int);
794  virtual void SetLineWidth(double);
795  virtual void AddUserCurvesPoint(double, double, double);
796  virtual void RemoveAllActiveCurves();
798 
800 
803  virtual void SetLegendBorder(int);
804  virtual void SetLegendBox(int);
805  virtual void SetLegendUseBackground(int);
806  virtual void SetLegendBackgroundColor(double, double, double);
808 
810 
813  virtual void SetTitleColor(double, double, double);
814  virtual void SetTitleFontFamily(int);
815  virtual void SetTitleBold(int);
816  virtual void SetTitleItalic(int);
817  virtual void SetTitleShadow(int);
818  virtual void SetTitleFontSize(int);
819  virtual void SetTitleJustification(int);
820  virtual void SetTitleVerticalJustification(int);
822 
824 
827  virtual void SetXAxisColor(double, double, double);
828  virtual void SetYAxisColor(double, double, double);
830 
832 
835  virtual void SetAxisTitleColor(double, double, double);
836  virtual void SetAxisTitleFontFamily(int);
837  virtual void SetAxisTitleBold(int);
838  virtual void SetAxisTitleItalic(int);
839  virtual void SetAxisTitleShadow(int);
840  virtual void SetAxisTitleFontSize(int);
841  virtual void SetAxisTitleJustification(int);
844 
846 
849  virtual void SetAxisLabelColor(double, double, double);
850  virtual void SetAxisLabelFontFamily(int);
851  virtual void SetAxisLabelBold(int);
852  virtual void SetAxisLabelItalic(int);
853  virtual void SetAxisLabelShadow(int);
854  virtual void SetAxisLabelFontSize(int);
855  virtual void SetAxisLabelJustification(int);
858 
859 protected:
861  ~vtkXYPlotActor() override;
862 
863  vtkXYPlotActorConnections* InputConnectionHolder;
864  char** SelectedInputScalars; // list of data set arrays to plot
866  vtkXYPlotActorConnections* DataObjectInputConnectionHolder; // list of data objects to plot
867  char* Title;
868  char* XTitle;
870  int XValues;
876  double XRange[2];
877  double YRange[2];
878  double XComputedRange[2]; // range actually used by plot
879  double YComputedRange[2]; // range actually used by plot
880  int Border;
891  double TitlePosition[2];
893 
897 
900 
903 
904  double ViewportCoordinate[2];
905  double PlotCoordinate[2];
906 
907  // Handle data objects and datasets
913 
914  // The data drawn within the axes. Each curve is one polydata.
915  // color is controlled by scalar data. The curves are appended
916  // together, possibly glyphed with point symbols.
924 
925  // Legends and plot symbols. The legend also keeps track of
926  // the symbols and such.
928  double LegendPosition[2];
929  double LegendPosition2[2];
933  double GlyphSize;
934 
935  // Background box
944 
945  // Reference lines
950 
954 
955  // Keep track of changes.
956  int CachedSize[2];
958 
959  void ComputeXRange(double range[2], double* lengths);
960  void ComputeYRange(double range[2]);
961  void ComputeDORange(double xrange[2], double yrange[2], double* lengths);
962 
963  virtual void CreatePlotData(
964  int* pos, int* pos2, double xRange[2], double yRange[2], double* norms, int numDS, int numDO);
965  void PlaceAxes(vtkViewport* viewport, const int* size, int pos[2], int pos2[2]);
966  void GenerateClipPlanes(int* pos, int* pos2);
967  double ComputeGlyphScale(int i, int* pos, int* pos2);
968  void ClipPlotData(int* pos, int* pos2, vtkPolyData* pd);
969  double* TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3]);
970 
972 
976 
977 private:
978  vtkXYPlotActor(const vtkXYPlotActor&) = delete;
979  void operator=(const vtkXYPlotActor&) = delete;
980 
981  bool DoesConnectionMatch(int i, vtkAlgorithmOutput* in);
982 
983  int IsInputPresent(vtkAlgorithmOutput* in, const char* arrayName, int component);
984 
988  int YTitleSize[2];
989 
993  int YTitlePosition;
994 
996 
999  int YTitleDelta;
1001 };
1002 
1003 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:149
Proxy object to connect input/output ports.
appends one or more polygonal datasets together
Create an axis with tick marks and labels.
maintain an unordered list of data objects
general representation of visualization data
maintain an unordered list of dataset objects
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
dynamic, self-adjusting array of double
copy oriented and scaled glyph geometry to every input point (2D specialization)
Definition: vtkGlyph2D.h:69
create 2D glyphs represented by vtkPolyData
a simple class to control print indentation
Definition: vtkIndent.h:113
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:149
draw symbols with text
implicit function for convex set of planes
Definition: vtkPlanes.h:159
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:195
represent surface properties of a 2D image
An actor that displays text.
Definition: vtkTextActor.h:160
2D text annotation
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:52
abstract specification for Viewports
Definition: vtkViewport.h:47
window superclass for vtkRenderWindow
Definition: vtkWindow.h:36
generate an x-y plot from input dataset(s) or field data
void RemoveAllDataSetInputConnections()
This removes all of the data set inputs, but does not change the data object inputs.
void AddDataSetInputConnection(vtkAlgorithmOutput *in, const char *arrayName, int component)
Add a dataset to the list of data to append.
void SetXValuesToIndex()
Specify how the independent (x) variable is computed from the points.
int IsInPlot(vtkViewport *viewport, double u, double v)
Is the specified viewport position within the plot area (as opposed to the region used by the plot pl...
virtual void SetTitleVerticalJustification(int)
Set title properties.
int GetDataObjectXComponent(int i)
Specify which component of the input data object to use as the independent variable for the ith input...
void SetNumberOfLabels(int num)
Set/Get the number of annotation labels to show along the x and y axes.
virtual void SetLegendBox(int)
Set legend properties.
void SetPlotPoints(int i, int)
void SetAdjustYLabels(int adjust)
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
void ComputeXRange(double range[2], double *lengths)
virtual void SetTitleFontSize(int)
Set title properties.
int RenderOverlay(vtkViewport *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
void SetXValuesToNormalizedArcLength()
Specify how the independent (x) variable is computed from the points.
vtkGlyph2D ** PlotGlyph
const char * GetPlotLabel(int i)
vtkXYPlotActorConnections * DataObjectInputConnectionHolder
vtkTextActor * YTitleActor
vtkAxisActor2D * YAxis
vtkPolyData * ReferenceLinesPolyData
virtual void SetTitleFontFamily(int)
Set title properties.
virtual void SetAxisLabelItalic(int)
Set axis label properties.
vtkGlyphSource2D * GlyphSource
int GetPlotLines(int i)
const char * GetDataObjectPlotModeAsString()
Indicate whether to plot rows or columns.
virtual void SetTitleTextProperty(vtkTextProperty *p)
Set/Get the title text property.
virtual void SetAxisTitleTextProperty(vtkTextProperty *p)
Set/Get the title text property of all axes.
void AddDataSetInput(vtkDataSet *ds, const char *arrayName, int component)
Add a dataset to the list of data to append.
void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
Set the plot range (range of independent and dependent variables) to plot.
vtkTypeBool ExchangeAxes
void PlotToViewportCoordinate(vtkViewport *viewport)
An alternate form of PlotToViewportCoordinate() above.
int RenderTranslucentPolygonalGeometry(vtkViewport *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
virtual void SetTitleBold(int)
Set title properties.
vtkTypeBool ShowReferenceYLine
vtkTypeBool Logx
virtual void SetAxisTitleItalic(int)
Set axis title properties.
double * TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3])
virtual void SetYTitle(const char *)
Set/Get the title of the y axis.
virtual void SetAxisLabelShadow(int)
Set axis label properties.
virtual void SetYLabelFormat(const char *)
Set/Get the format with which to print the Y label.
vtkAxisActor2D * GetYAxisActor2D()
Retrieve handles to the X and Y axis (so that you can set their text properties for example)
vtkPolyData ** PlotData
vtkTypeBool PlotLines
void SetXValuesToValue()
Specify how the independent (x) variable is computed from the points.
vtkXYPlotActorConnections * InputConnectionHolder
vtkIntArray * XComponent
vtkActor2D * ReferenceLinesActor
virtual void CreatePlotData(int *pos, int *pos2, double xRange[2], double yRange[2], double *norms, int numDS, int numDO)
virtual void SetLegendUseBackground(int)
Set legend properties.
void SetPointComponent(int i, int comp)
If plotting points by value, which component to use to determine the value.
vtkProperty2D * GetChartBoxProperty()
Get the box vtkProperty2D.
vtkPlanes * ClipPlanes
vtkAxisActor2D * GetXAxisActor2D()
Retrieve handles to the X and Y axis (so that you can set their text properties for example)
vtkTextProperty * AxisLabelTextProperty
const char * GetXValuesAsString()
Specify how the independent (x) variable is computed from the points.
double ReferenceYValue
void SetPlotColor(int i, double r, double g, double b)
void SetYTitlePositionToVCenter()
Set/Get the position of the title of Y axis.
vtkPolyDataMapper2D * ReferenceLinesMapper
vtkActor2D * ChartBoxActor
vtkTypeBool ChartBox
void SetYTitlePositionToHCenter()
Set/Get the position of the title of Y axis.
virtual void RemoveAllActiveCurves()
Set plot properties.
vtkMTimeType GetMTime() override
Take into account the modified time of internal helper classes.
void PrintAsCSV(ostream &os)
Write the XY Ploat Actor as a CSV (comma separated value) representation.
void SetPlotSymbol(int i, vtkPolyData *input)
void SetDataObjectPlotModeToColumns()
Indicate whether to plot rows or columns.
void ComputeYRange(double range[2])
void SetDataObjectYComponent(int i, int comp)
Specify which component of the input data object to use as the dependent variable for the ith input d...
virtual void SetAxisTitleVerticalJustification(int)
Set axis title properties.
void SetNumberOfXMinorTicks(int num)
Set/Get the number of minor ticks in X or Y.
void AddDataSetInput(vtkDataSet *ds)
Add a dataset to the list of data to append.
vtkIntArray * PointsOn
virtual void SetLegendBorder(int)
Set legend properties.
virtual void SetYAxisColor(double, double, double)
Set axes properties.
double ComputeGlyphScale(int i, int *pos, int *pos2)
void SetXTitlePosition(double position)
Set/Get the position of the title of X axis.
vtkPolyData * GetPlotSymbol(int i)
static vtkXYPlotActor * New()
Instantiate object with autorange computation; bold, italic, and shadows on; arial font family; the n...
virtual void SetAxisTitleFontFamily(int)
Set axis title properties.
virtual void SetPlotGlyphType(int, int)
Set plot properties.
void AddDataObjectInputConnection(vtkAlgorithmOutput *alg)
Add a data object to the list of data to display.
void RemoveDataSetInputConnection(vtkAlgorithmOutput *in, const char *arrayName, int component)
Remove a dataset from the list of data to append.
virtual void SetAxisLabelVerticalJustification(int)
Set axis label properties.
virtual void SetAxisTitleShadow(int)
Set axis title properties.
virtual void SetAxisLabelColor(double, double, double)
Set axis label properties.
vtkTextProperty * TitleTextProperty
void RemoveDataObjectInput(vtkDataObject *in)
Remove a dataset from the list of data to display.
virtual void SetTitleItalic(int)
Set title properties.
double * GetPlotColor(int i)
virtual void AddUserCurvesPoint(double, double, double)
Set plot properties.
virtual void SetAxisTitleJustification(int)
Set axis title properties.
int GetPlotPoints(int i)
vtkTypeBool ReverseYAxis
void SetPlotLabel(int i, const char *label)
void PlaceAxes(vtkViewport *viewport, const int *size, int pos[2], int pos2[2])
void RemoveDataSetInputConnection(vtkAlgorithmOutput *in)
Remove a dataset from the list of data to append.
char ** SelectedInputScalars
virtual void SetAxisLabelBold(int)
Set axis label properties.
virtual void SetAxisTitleFontSize(int)
Set axis title properties.
virtual void SetAxisTitleBold(int)
Set axis title properties.
virtual void SetXLabelFormat(const char *)
Set/Get the format with which to print the X label.
vtkActor2D ** PlotActor
virtual void SetXAxisColor(double, double, double)
Set axes properties.
void AddDataObjectInput(vtkDataObject *in)
Add a data object to the list of data to display.
vtkActor2D * TitleActor
void ViewportToPlotCoordinate(vtkViewport *viewport, double &u, double &v)
Given a position within the viewport used by the plot, return the the plot coordinates (XAxis value,...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void SetLineWidth(double)
Set plot properties.
void ClipPlotData(int *pos, int *pos2, vtkPolyData *pd)
vtkTypeBool AdjustTitlePosition
vtkIntArray * YComponent
void SetPlotLines(int i, int)
vtkTypeBool PlotPoints
vtkTypeBool PlotCurvePoints
void GenerateClipPlanes(int *pos, int *pos2)
~vtkXYPlotActor() override
int GetNumberOfYMinorTicks()
Set/Get the number of minor ticks in X or Y.
virtual void SetAxisLabelJustification(int)
Set axis label properties.
const char * GetLabelFormat()
Set/Get the format with which to print the labels .
vtkTextMapper * TitleMapper
vtkPolyData * ChartBorderPolyData
virtual void SetTitleJustification(int)
Set title properties.
void RemoveDataObjectInputConnection(vtkAlgorithmOutput *aout)
Remove a dataset from the list of data to display.
vtkTypeBool PlotCurveLines
char * GetYTitle()
Set/Get the title of the y axis.
vtkIntArray * SelectedInputScalarsComponent
vtkActor2D * ChartBorderActor
virtual void SetLegendBackgroundColor(double, double, double)
Set legend properties.
virtual void SetAxisLabelFontSize(int)
Set axis label properties.
int RenderOpaqueGeometry(vtkViewport *) override
WARNING: INTERNAL METHOD - NOT INTENDED FOR GENERAL USE DO NOT USE THIS METHOD OUTSIDE OF THE RENDERI...
virtual void SetLabelFormat(const char *)
Set/Get the format with which to print the labels .
void RemoveDataSetInput(vtkDataSet *ds, const char *arrayName, int component)
Remove a dataset from the list of data to append.
void SetYTitlePositionToTop()
Set/Get the position of the title of Y axis.
void SetPlotColor(int i, const double color[3])
vtkPolyDataMapper2D * ChartBoxMapper
int GetPointComponent(int i)
If plotting points by value, which component to use to determine the value.
virtual void SetTitleColor(double, double, double)
Set title properties.
int GetNumberOfXMinorTicks()
Set/Get the number of minor ticks in X or Y.
vtkAxisActor2D * XAxis
virtual void SetAxisTitleColor(double, double, double)
Set axis title properties.
vtkTypeBool ChartBorder
void PlotToViewportCoordinate(vtkViewport *viewport, double &u, double &v)
Given a plot coordinate, return the viewpoint position.
virtual void SetTitleShadow(int)
Set title properties.
vtkTypeBool ShowReferenceXLine
void SetDataObjectXComponent(int i, int comp)
Specify which component of the input data object to use as the independent variable for the ith input...
vtkLegendBoxActor * LegendActor
void InitializeEntries()
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this actor.
double GetXTitlePosition()
Set/Get the position of the title of X axis.
vtkPolyDataMapper2D * ChartBorderMapper
vtkTypeBool ReverseXAxis
vtkPolyData * ChartBoxPolyData
vtkIntArray * LinesOn
vtkTypeBool Legend
vtkPolyDataMapper2D ** PlotMapper
vtkTimeStamp BuildTime
void RemoveDataSetInput(vtkDataSet *ds)
Remove a dataset from the list of data to append.
void SetXValuesToArcLength()
Specify how the independent (x) variable is computed from the points.
int GetDataObjectYComponent(int i)
Specify which component of the input data object to use as the dependent variable for the ith input d...
void SetDataObjectPlotModeToRows()
Indicate whether to plot rows or columns.
void SetNumberOfYMinorTicks(int num)
Set/Get the number of minor ticks in X or Y.
vtkSmartPointer< vtkDoubleArray > ActiveCurve
vtkTextProperty * AxisTitleTextProperty
vtkAppendPolyData ** PlotAppend
void AddDataSetInputConnection(vtkAlgorithmOutput *in)
Add a dataset to the list of data to append.
void ViewportToPlotCoordinate(vtkViewport *viewport)
An alternate form of ViewportToPlotCoordinate() above.
void SetAdjustXLabels(int adjust)
Set/Get the flag that controls whether the labels and ticks are adjusted for "nice" numerical values ...
virtual void SetAxisLabelTextProperty(vtkTextProperty *p)
Set/Get the labels text property of all axes.
double ReferenceXValue
virtual void SetAxisLabelFontFamily(int)
Set axis label properties.
void ComputeDORange(double xrange[2], double yrange[2], double *lengths)
vtkTypeBool HasTranslucentPolygonalGeometry() override
Does this prop have some translucent polygonal geometry?
@ component
Definition: vtkX3D.h:181
@ range
Definition: vtkX3D.h:244
@ color
Definition: vtkX3D.h:227
@ position
Definition: vtkX3D.h:267
@ size
Definition: vtkX3D.h:259
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
#define VTK_SIZEHINT(...)
#define VTK_XYPLOT_Y_AXIS_HCENTER
#define VTK_XYPLOT_Y_AXIS_VCENTER
#define VTK_XYPLOT_COLUMN
#define VTK_XYPLOT_INDEX
#define VTK_XYPLOT_Y_AXIS_TOP
#define VTK_XYPLOT_VALUE
#define VTK_XYPLOT_NORMALIZED_ARC_LENGTH
#define VTK_XYPLOT_ROW
#define VTK_XYPLOT_ARC_LENGTH