VTK  9.3.0
vtkXYPlotActor.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
88 #ifndef vtkXYPlotActor_h
89 #define vtkXYPlotActor_h
90 
91 #define VTK_XYPLOT_INDEX 0
92 #define VTK_XYPLOT_ARC_LENGTH 1
93 #define VTK_XYPLOT_NORMALIZED_ARC_LENGTH 2
94 #define VTK_XYPLOT_VALUE 3
95 
96 #define VTK_XYPLOT_ROW 0
97 #define VTK_XYPLOT_COLUMN 1
98 
99 #define VTK_XYPLOT_Y_AXIS_TOP 0
100 #define VTK_XYPLOT_Y_AXIS_HCENTER 1
101 #define VTK_XYPLOT_Y_AXIS_VCENTER 2 // rotate by 90 degrees (y-axis aligned)
102 
103 #include "vtkActor2D.h"
104 #include "vtkRenderingAnnotationModule.h" // For export macro
105 #include "vtkSmartPointer.h" // For SP
106 
107 VTK_ABI_NAMESPACE_BEGIN
108 class vtkXYPlotActorConnections;
109 class vtkAlgorithmOutput;
110 class vtkAppendPolyData;
111 class vtkAxisActor2D;
112 class vtkDataObject;
114 class vtkDataSet;
116 class vtkDoubleArray;
117 class vtkGlyph2D;
118 class vtkGlyphSource2D;
119 class vtkIntArray;
120 class vtkLegendBoxActor;
121 class vtkPlanes;
122 class vtkPolyData;
123 class vtkPolyDataMapper2D;
124 class vtkTextActor;
125 class vtkTextMapper;
126 class vtkTextProperty;
127 
128 class VTKRENDERINGANNOTATION_EXPORT vtkXYPlotActor : public vtkActor2D
129 {
130 public:
131  vtkTypeMacro(vtkXYPlotActor, vtkActor2D);
132  void PrintSelf(ostream& os, vtkIndent indent) override;
133 
140  static vtkXYPlotActor* New();
141 
142  //---Data Set Input----------------------------------------------------------
143  // The following methods are used to plot input datasets. Datasets
144  // will be plotted if set as input; otherwise the input data objects
145  // will be plotted (if defined).
146 
148 
156  void AddDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
157  void AddDataSetInput(vtkDataSet* ds) { this->AddDataSetInput(ds, nullptr, 0); }
158  void AddDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
160  {
161  this->AddDataSetInputConnection(in, nullptr, 0);
162  }
164 
166 
169  void RemoveDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
170  void RemoveDataSetInput(vtkDataSet* ds) { this->RemoveDataSetInput(ds, nullptr, 0); }
171  void RemoveDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
173  {
174  this->RemoveDataSetInputConnection(in, nullptr, 0);
175  }
177 
183 
185 
189  void SetPointComponent(int i, int comp);
190  int GetPointComponent(int i);
191  //---end Data Set Input-----------------------------------------------------
193 
195 
205  vtkSetClampMacro(XValues, int, VTK_XYPLOT_INDEX, VTK_XYPLOT_VALUE);
206  vtkGetMacro(XValues, int);
207  void SetXValuesToIndex() { this->SetXValues(VTK_XYPLOT_INDEX); }
208  void SetXValuesToArcLength() { this->SetXValues(VTK_XYPLOT_ARC_LENGTH); }
210  void SetXValuesToValue() { this->SetXValues(VTK_XYPLOT_VALUE); }
211  const char* GetXValuesAsString();
213 
214  //---Data Object Input------------------------------------------------------
215  // The following methods are used to plot input data objects. Datasets will
216  // be plotted in preference to data objects if set as input; otherwise the
217  // input data objects will be plotted (if defined).
218 
220 
226 
228 
234 
236 
241  vtkSetClampMacro(DataObjectPlotMode, int, VTK_XYPLOT_ROW, VTK_XYPLOT_COLUMN);
242  vtkGetMacro(DataObjectPlotMode, int);
243  void SetDataObjectPlotModeToRows() { this->SetDataObjectPlotMode(VTK_XYPLOT_ROW); }
244  void SetDataObjectPlotModeToColumns() { this->SetDataObjectPlotMode(VTK_XYPLOT_COLUMN); }
247 
249 
257  void SetDataObjectXComponent(int i, int comp);
260 
262 
270  void SetDataObjectYComponent(int i, int comp);
272  //---end Data Object Input--------------------------------------------------
274 
275  //---Per Curve Properties---------------------------------------------------
276  // The following methods are used to set properties on each curve that is
277  // plotted. Each input dataset (or data object) results in one curve. The
278  // methods that follow have an index i that corresponds to the input dataset
279  // or data object.
280  void SetPlotColor(int i, double r, double g, double b);
281  void SetPlotColor(int i, const double color[3])
282  {
283  this->SetPlotColor(i, color[0], color[1], color[2]);
284  }
285  double* GetPlotColor(int i) VTK_SIZEHINT(3);
286  void SetPlotSymbol(int i, vtkPolyData* input);
288  void SetPlotLabel(int i, const char* label);
289  const char* GetPlotLabel(int i);
290 
291  // Allow per-curve specification of line and point rendering. These override
292  // global settings PlotPoints and PlotLines. If not on, the default behavior
293  // is governed by PlotPoints and PlotLines ivars.
294  vtkGetMacro(PlotCurvePoints, vtkTypeBool);
295  vtkSetMacro(PlotCurvePoints, vtkTypeBool);
296  vtkBooleanMacro(PlotCurvePoints, vtkTypeBool);
297 
298  vtkGetMacro(PlotCurveLines, vtkTypeBool);
299  vtkSetMacro(PlotCurveLines, vtkTypeBool);
300  vtkBooleanMacro(PlotCurveLines, vtkTypeBool);
301 
302  void SetPlotLines(int i, int);
303  int GetPlotLines(int i);
304 
305  void SetPlotPoints(int i, int);
306  int GetPlotPoints(int i);
307  //---end Per Curve Properties-----------------------------------------------
308 
310 
314  vtkSetMacro(ExchangeAxes, vtkTypeBool);
315  vtkGetMacro(ExchangeAxes, vtkTypeBool);
316  vtkBooleanMacro(ExchangeAxes, vtkTypeBool);
318 
320 
325  vtkSetMacro(ReverseXAxis, vtkTypeBool);
326  vtkGetMacro(ReverseXAxis, vtkTypeBool);
327  vtkBooleanMacro(ReverseXAxis, vtkTypeBool);
329 
331 
336  vtkSetMacro(ReverseYAxis, vtkTypeBool);
337  vtkGetMacro(ReverseYAxis, vtkTypeBool);
338  vtkBooleanMacro(ReverseYAxis, vtkTypeBool);
340 
342 
348  vtkGetObjectMacro(LegendActor, vtkLegendBoxActor);
349  vtkGetObjectMacro(GlyphSource, vtkGlyphSource2D);
351 
353 
356  vtkSetStringMacro(Title);
357  vtkGetStringMacro(Title);
359 
361 
364  vtkSetStringMacro(XTitle);
365  vtkGetStringMacro(XTitle);
367 
369 
372  virtual void SetYTitle(const char*);
373  char* GetYTitle();
375 
377 
381  vtkAxisActor2D* GetXAxisActor2D() { return this->XAxis; }
382  vtkAxisActor2D* GetYAxisActor2D() { return this->YAxis; }
384 
386 
394  vtkSetVector2Macro(XRange, double);
395  vtkGetVectorMacro(XRange, double, 2);
396  vtkSetVector2Macro(YRange, double);
397  vtkGetVectorMacro(YRange, double, 2);
398  void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
399  {
400  this->SetXRange(xmin, xmax);
401  this->SetYRange(ymin, ymax);
402  }
404 
406 
412  vtkSetClampMacro(NumberOfXLabels, int, 0, 50);
413  vtkGetMacro(NumberOfXLabels, int);
414  vtkSetClampMacro(NumberOfYLabels, int, 0, 50);
415  vtkGetMacro(NumberOfYLabels, int);
416  void SetNumberOfLabels(int num)
417  {
418  this->SetNumberOfXLabels(num);
419  this->SetNumberOfYLabels(num);
420  }
422 
424 
431  void SetAdjustXLabels(int adjust);
432  vtkGetMacro(AdjustXLabels, int);
433  void SetAdjustYLabels(int adjust);
434  vtkGetMacro(AdjustYLabels, int);
436 
438 
441  void SetNumberOfXMinorTicks(int num);
443  void SetNumberOfYMinorTicks(int num);
446 
448 
453  vtkSetMacro(Legend, vtkTypeBool);
454  vtkGetMacro(Legend, vtkTypeBool);
455  vtkBooleanMacro(Legend, vtkTypeBool);
457 
459 
463  vtkSetVector2Macro(TitlePosition, double);
464  vtkGetVector2Macro(TitlePosition, double);
466 
468 
472  vtkSetMacro(AdjustTitlePosition, vtkTypeBool);
473  vtkGetMacro(AdjustTitlePosition, vtkTypeBool);
474  vtkBooleanMacro(AdjustTitlePosition, vtkTypeBool);
476 
478  {
479  AlignLeft = 0x1,
480  AlignRight = 0x2,
481  AlignHCenter = 0x4,
482  AlignTop = 0x10,
483  AlignBottom = 0x20,
484  AlignVCenter = 0x40,
485  AlignAxisLeft = 0x100,
486  AlignAxisRight = 0x200,
487  AlignAxisHCenter = 0x400,
488  AlignAxisTop = 0x1000,
489  AlignAxisBottom = 0x2000,
490  AlignAxisVCenter = 0x4000
491  };
492 
494 
501  vtkSetMacro(AdjustTitlePositionMode, int);
502  vtkGetMacro(AdjustTitlePositionMode, int);
504 
506 
514  vtkSetVector2Macro(LegendPosition, double);
515  vtkGetVector2Macro(LegendPosition, double);
516  vtkSetVector2Macro(LegendPosition2, double);
517  vtkGetVector2Macro(LegendPosition2, double);
519 
521 
525  vtkGetObjectMacro(TitleTextProperty, vtkTextProperty);
527 
529 
534  vtkGetObjectMacro(AxisTitleTextProperty, vtkTextProperty);
536 
538 
543  vtkGetObjectMacro(AxisLabelTextProperty, vtkTextProperty);
545 
547 
550  vtkSetMacro(Logx, vtkTypeBool);
551  vtkGetMacro(Logx, vtkTypeBool);
552  vtkBooleanMacro(Logx, vtkTypeBool);
554 
556 
560  virtual void SetLabelFormat(const char*);
561  const char* GetLabelFormat() { return this->GetXLabelFormat(); }
563 
565 
568  virtual void SetXLabelFormat(const char*);
569  vtkGetStringMacro(XLabelFormat);
571 
573 
576  virtual void SetYLabelFormat(const char*);
577  vtkGetStringMacro(YLabelFormat);
579 
581 
585  vtkSetClampMacro(Border, int, 0, 50);
586  vtkGetMacro(Border, int);
588 
590 
595  vtkGetMacro(PlotPoints, vtkTypeBool);
596  vtkSetMacro(PlotPoints, vtkTypeBool);
597  vtkBooleanMacro(PlotPoints, vtkTypeBool);
599 
601 
605  vtkGetMacro(PlotLines, vtkTypeBool);
606  vtkSetMacro(PlotLines, vtkTypeBool);
607  vtkBooleanMacro(PlotLines, vtkTypeBool);
609 
611 
616  vtkSetClampMacro(GlyphSize, double, 0.0, 0.2);
617  vtkGetMacro(GlyphSize, double);
619 
624  void ViewportToPlotCoordinate(vtkViewport* viewport, double& u, double& v);
625 
627 
633  vtkSetVector2Macro(PlotCoordinate, double);
634  vtkGetVector2Macro(PlotCoordinate, double);
636 
640  void PlotToViewportCoordinate(vtkViewport* viewport, double& u, double& v);
641 
643 
650  vtkSetVector2Macro(ViewportCoordinate, double);
651  vtkGetVector2Macro(ViewportCoordinate, double);
653 
658  int IsInPlot(vtkViewport* viewport, double u, double v);
659 
661 
665  vtkSetMacro(ChartBox, vtkTypeBool);
666  vtkGetMacro(ChartBox, vtkTypeBool);
667  vtkBooleanMacro(ChartBox, vtkTypeBool);
669 
671 
675  vtkSetMacro(ChartBorder, vtkTypeBool);
676  vtkGetMacro(ChartBorder, vtkTypeBool);
677  vtkBooleanMacro(ChartBorder, vtkTypeBool);
679 
683  vtkProperty2D* GetChartBoxProperty() { return this->ChartBoxActor->GetProperty(); }
684 
686 
689  vtkSetMacro(ShowReferenceXLine, vtkTypeBool);
690  vtkGetMacro(ShowReferenceXLine, vtkTypeBool);
691  vtkBooleanMacro(ShowReferenceXLine, vtkTypeBool);
693 
695 
698  vtkSetMacro(ReferenceXValue, double);
699  vtkGetMacro(ReferenceXValue, double);
701 
703 
706  vtkSetMacro(ShowReferenceYLine, vtkTypeBool);
707  vtkGetMacro(ShowReferenceYLine, vtkTypeBool);
708  vtkBooleanMacro(ShowReferenceYLine, vtkTypeBool);
710 
712 
715  vtkSetMacro(ReferenceYValue, double);
716  vtkGetMacro(ReferenceYValue, double);
718 
722  vtkMTimeType GetMTime() override;
723 
727  void PrintAsCSV(ostream& os);
728 
730 
736  int RenderOverlay(vtkViewport*) override;
737  int RenderTranslucentPolygonalGeometry(vtkViewport*) override { return 0; }
739 
744 
751 
753 
759 
761 
764  vtkSetMacro(YTitlePosition, int);
765  vtkGetMacro(YTitlePosition, int);
766  void SetYTitlePositionToTop() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_TOP); }
767  void SetYTitlePositionToHCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_HCENTER); }
768  void SetYTitlePositionToVCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_VCENTER); }
770 
772 
775  virtual void SetPlotGlyphType(int, int);
776  virtual void SetLineWidth(double);
777  virtual void AddUserCurvesPoint(double, double, double);
778  virtual void RemoveAllActiveCurves();
780 
782 
785  virtual void SetLegendBorder(int);
786  virtual void SetLegendBox(int);
787  virtual void SetLegendUseBackground(int);
788  virtual void SetLegendBackgroundColor(double, double, double);
790 
792 
795  virtual void SetTitleColor(double, double, double);
796  virtual void SetTitleFontFamily(int);
797  virtual void SetTitleBold(int);
798  virtual void SetTitleItalic(int);
799  virtual void SetTitleShadow(int);
800  virtual void SetTitleFontSize(int);
801  virtual void SetTitleJustification(int);
802  virtual void SetTitleVerticalJustification(int);
804 
806 
809  virtual void SetXAxisColor(double, double, double);
810  virtual void SetYAxisColor(double, double, double);
812 
814 
817  virtual void SetAxisTitleColor(double, double, double);
818  virtual void SetAxisTitleFontFamily(int);
819  virtual void SetAxisTitleBold(int);
820  virtual void SetAxisTitleItalic(int);
821  virtual void SetAxisTitleShadow(int);
822  virtual void SetAxisTitleFontSize(int);
823  virtual void SetAxisTitleJustification(int);
826 
828 
831  virtual void SetAxisLabelColor(double, double, double);
832  virtual void SetAxisLabelFontFamily(int);
833  virtual void SetAxisLabelBold(int);
834  virtual void SetAxisLabelItalic(int);
835  virtual void SetAxisLabelShadow(int);
836  virtual void SetAxisLabelFontSize(int);
837  virtual void SetAxisLabelJustification(int);
840 
841 protected:
843  ~vtkXYPlotActor() override;
844 
845  vtkXYPlotActorConnections* InputConnectionHolder;
846  char** SelectedInputScalars; // list of data set arrays to plot
848  vtkXYPlotActorConnections* DataObjectInputConnectionHolder; // list of data objects to plot
849  char* Title;
850  char* XTitle;
852  int XValues;
858  double XRange[2];
859  double YRange[2];
860  double XComputedRange[2]; // range actually used by plot
861  double YComputedRange[2]; // range actually used by plot
862  int Border;
873  double TitlePosition[2];
875 
879 
882 
885 
886  double ViewportCoordinate[2];
887  double PlotCoordinate[2];
888 
889  // Handle data objects and datasets
895 
896  // The data drawn within the axes. Each curve is one polydata.
897  // color is controlled by scalar data. The curves are appended
898  // together, possibly glyphed with point symbols.
906 
907  // Legends and plot symbols. The legend also keeps track of
908  // the symbols and such.
910  double LegendPosition[2];
911  double LegendPosition2[2];
915  double GlyphSize;
916 
917  // Background box
926 
927  // Reference lines
932 
936 
937  // Keep track of changes.
938  int CachedSize[2];
940 
941  void ComputeXRange(double range[2], double* lengths);
942  void ComputeYRange(double range[2]);
943  void ComputeDORange(double xrange[2], double yrange[2], double* lengths);
944 
945  virtual void CreatePlotData(
946  int* pos, int* pos2, double xRange[2], double yRange[2], double* norms, int numDS, int numDO);
947  void PlaceAxes(vtkViewport* viewport, const int* size, int pos[2], int pos2[2]);
948  void GenerateClipPlanes(int* pos, int* pos2);
949  double ComputeGlyphScale(int i, int* pos, int* pos2);
950  void ClipPlotData(int* pos, int* pos2, vtkPolyData* pd);
951  double* TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3]);
952 
954 
958 
959 private:
960  vtkXYPlotActor(const vtkXYPlotActor&) = delete;
961  void operator=(const vtkXYPlotActor&) = delete;
962 
963  bool DoesConnectionMatch(int i, vtkAlgorithmOutput* in);
964 
965  int IsInputPresent(vtkAlgorithmOutput* in, const char* arrayName, int component);
966 
970  int YTitleSize[2];
971 
975  int YTitlePosition;
976 
978 
981  int YTitleDelta;
983 };
984 
985 VTK_ABI_NAMESPACE_END
986 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:44
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
Definition: vtkDataObject.h:64
maintain an unordered list of dataset objects
abstract class to specify dataset behavior
Definition: vtkDataSet.h:62
dynamic, self-adjusting array of double
copy oriented and scaled glyph geometry to every input point (2D specialization)
Definition: vtkGlyph2D.h:41
create 2D glyphs represented by vtkPolyData
a simple class to control print indentation
Definition: vtkIndent.h:38
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:44
draw symbols with text
implicit function for convex set of planes
Definition: vtkPlanes.h:51
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:89
represent surface properties of a 2D image
Definition: vtkProperty2D.h:39
An actor that displays text.
Definition: vtkTextActor.h:55
2D text annotation
Definition: vtkTextMapper.h:49
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:34
abstract specification for Viewports
Definition: vtkViewport.h:54
window superclass for vtkRenderWindow
Definition: vtkWindow.h:37
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:175
@ range
Definition: vtkX3D.h:238
@ color
Definition: vtkX3D.h:221
@ position
Definition: vtkX3D.h:261
@ size
Definition: vtkX3D.h:253
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
#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