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
79 #ifndef vtkXYPlotActor_h
80 #define vtkXYPlotActor_h
81 
82 #define VTK_XYPLOT_INDEX 0
83 #define VTK_XYPLOT_ARC_LENGTH 1
84 #define VTK_XYPLOT_NORMALIZED_ARC_LENGTH 2
85 #define VTK_XYPLOT_VALUE 3
86 
87 #define VTK_XYPLOT_ROW 0
88 #define VTK_XYPLOT_COLUMN 1
89 
90 #define VTK_XYPLOT_Y_AXIS_TOP 0
91 #define VTK_XYPLOT_Y_AXIS_HCENTER 1
92 #define VTK_XYPLOT_Y_AXIS_VCENTER 2 // rotate by 90 degrees (y-axis aligned)
93 
94 #include "vtkActor2D.h"
95 #include "vtkRenderingAnnotationModule.h" // For export macro
96 #include "vtkSmartPointer.h" // For SP
97 
98 VTK_ABI_NAMESPACE_BEGIN
99 class vtkXYPlotActorConnections;
100 class vtkAlgorithmOutput;
101 class vtkAppendPolyData;
102 class vtkAxisActor2D;
103 class vtkDataObject;
105 class vtkDataSet;
107 class vtkDoubleArray;
108 class vtkGlyph2D;
109 class vtkGlyphSource2D;
110 class vtkIntArray;
111 class vtkLegendBoxActor;
112 class vtkPlanes;
113 class vtkPolyData;
114 class vtkPolyDataMapper2D;
115 class vtkTextActor;
116 class vtkTextMapper;
117 class vtkTextProperty;
118 
119 class VTKRENDERINGANNOTATION_EXPORT vtkXYPlotActor : public vtkActor2D
120 {
121 public:
122  vtkTypeMacro(vtkXYPlotActor, vtkActor2D);
123  void PrintSelf(ostream& os, vtkIndent indent) override;
124 
131  static vtkXYPlotActor* New();
132 
133  //---Data Set Input----------------------------------------------------------
134  // The following methods are used to plot input datasets. Datasets
135  // will be plotted if set as input; otherwise the input data objects
136  // will be plotted (if defined).
137 
139 
147  void AddDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
148  void AddDataSetInput(vtkDataSet* ds) { this->AddDataSetInput(ds, nullptr, 0); }
149  void AddDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
151  {
152  this->AddDataSetInputConnection(in, nullptr, 0);
153  }
155 
157 
160  void RemoveDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
161  void RemoveDataSetInput(vtkDataSet* ds) { this->RemoveDataSetInput(ds, nullptr, 0); }
162  void RemoveDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
164  {
165  this->RemoveDataSetInputConnection(in, nullptr, 0);
166  }
168 
174 
176 
180  void SetPointComponent(int i, int comp);
181  int GetPointComponent(int i);
182  //---end Data Set Input-----------------------------------------------------
184 
186 
196  vtkSetClampMacro(XValues, int, VTK_XYPLOT_INDEX, VTK_XYPLOT_VALUE);
197  vtkGetMacro(XValues, int);
198  void SetXValuesToIndex() { this->SetXValues(VTK_XYPLOT_INDEX); }
199  void SetXValuesToArcLength() { this->SetXValues(VTK_XYPLOT_ARC_LENGTH); }
201  void SetXValuesToValue() { this->SetXValues(VTK_XYPLOT_VALUE); }
202  const char* GetXValuesAsString();
204 
205  //---Data Object Input------------------------------------------------------
206  // The following methods are used to plot input data objects. Datasets will
207  // be plotted in preference to data objects if set as input; otherwise the
208  // input data objects will be plotted (if defined).
209 
211 
217 
219 
225 
227 
232  vtkSetClampMacro(DataObjectPlotMode, int, VTK_XYPLOT_ROW, VTK_XYPLOT_COLUMN);
233  vtkGetMacro(DataObjectPlotMode, int);
234  void SetDataObjectPlotModeToRows() { this->SetDataObjectPlotMode(VTK_XYPLOT_ROW); }
235  void SetDataObjectPlotModeToColumns() { this->SetDataObjectPlotMode(VTK_XYPLOT_COLUMN); }
238 
240 
248  void SetDataObjectXComponent(int i, int comp);
251 
253 
261  void SetDataObjectYComponent(int i, int comp);
263  //---end Data Object Input--------------------------------------------------
265 
266  //---Per Curve Properties---------------------------------------------------
267  // The following methods are used to set properties on each curve that is
268  // plotted. Each input dataset (or data object) results in one curve. The
269  // methods that follow have an index i that corresponds to the input dataset
270  // or data object.
271  void SetPlotColor(int i, double r, double g, double b);
272  void SetPlotColor(int i, const double color[3])
273  {
274  this->SetPlotColor(i, color[0], color[1], color[2]);
275  }
276  double* GetPlotColor(int i) VTK_SIZEHINT(3);
277  void SetPlotSymbol(int i, vtkPolyData* input);
279  void SetPlotLabel(int i, const char* label);
280  const char* GetPlotLabel(int i);
281 
282  // Allow per-curve specification of line and point rendering. These override
283  // global settings PlotPoints and PlotLines. If not on, the default behavior
284  // is governed by PlotPoints and PlotLines ivars.
285  vtkGetMacro(PlotCurvePoints, vtkTypeBool);
286  vtkSetMacro(PlotCurvePoints, vtkTypeBool);
287  vtkBooleanMacro(PlotCurvePoints, vtkTypeBool);
288 
289  vtkGetMacro(PlotCurveLines, vtkTypeBool);
290  vtkSetMacro(PlotCurveLines, vtkTypeBool);
291  vtkBooleanMacro(PlotCurveLines, vtkTypeBool);
292 
293  void SetPlotLines(int i, int);
294  int GetPlotLines(int i);
295 
296  void SetPlotPoints(int i, int);
297  int GetPlotPoints(int i);
298  //---end Per Curve Properties-----------------------------------------------
299 
301 
305  vtkSetMacro(ExchangeAxes, vtkTypeBool);
306  vtkGetMacro(ExchangeAxes, vtkTypeBool);
307  vtkBooleanMacro(ExchangeAxes, vtkTypeBool);
309 
311 
316  vtkSetMacro(ReverseXAxis, vtkTypeBool);
317  vtkGetMacro(ReverseXAxis, vtkTypeBool);
318  vtkBooleanMacro(ReverseXAxis, vtkTypeBool);
320 
322 
327  vtkSetMacro(ReverseYAxis, vtkTypeBool);
328  vtkGetMacro(ReverseYAxis, vtkTypeBool);
329  vtkBooleanMacro(ReverseYAxis, vtkTypeBool);
331 
333 
339  vtkGetObjectMacro(LegendActor, vtkLegendBoxActor);
340  vtkGetObjectMacro(GlyphSource, vtkGlyphSource2D);
342 
344 
347  vtkSetStringMacro(Title);
348  vtkGetStringMacro(Title);
350 
352 
355  vtkSetStringMacro(XTitle);
356  vtkGetStringMacro(XTitle);
358 
360 
363  virtual void SetYTitle(const char*);
364  char* GetYTitle();
366 
368 
372  vtkAxisActor2D* GetXAxisActor2D() { return this->XAxis; }
373  vtkAxisActor2D* GetYAxisActor2D() { return this->YAxis; }
375 
377 
385  vtkSetVector2Macro(XRange, double);
386  vtkGetVectorMacro(XRange, double, 2);
387  vtkSetVector2Macro(YRange, double);
388  vtkGetVectorMacro(YRange, double, 2);
389  void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
390  {
391  this->SetXRange(xmin, xmax);
392  this->SetYRange(ymin, ymax);
393  }
395 
397 
403  vtkSetClampMacro(NumberOfXLabels, int, 0, 50);
404  vtkGetMacro(NumberOfXLabels, int);
405  vtkSetClampMacro(NumberOfYLabels, int, 0, 50);
406  vtkGetMacro(NumberOfYLabels, int);
407  void SetNumberOfLabels(int num)
408  {
409  this->SetNumberOfXLabels(num);
410  this->SetNumberOfYLabels(num);
411  }
413 
415 
422  void SetAdjustXLabels(int adjust);
423  vtkGetMacro(AdjustXLabels, int);
424  void SetAdjustYLabels(int adjust);
425  vtkGetMacro(AdjustYLabels, int);
427 
429 
432  void SetNumberOfXMinorTicks(int num);
434  void SetNumberOfYMinorTicks(int num);
437 
439 
444  vtkSetMacro(Legend, vtkTypeBool);
445  vtkGetMacro(Legend, vtkTypeBool);
446  vtkBooleanMacro(Legend, vtkTypeBool);
448 
450 
454  vtkSetVector2Macro(TitlePosition, double);
455  vtkGetVector2Macro(TitlePosition, double);
457 
459 
463  vtkSetMacro(AdjustTitlePosition, vtkTypeBool);
464  vtkGetMacro(AdjustTitlePosition, vtkTypeBool);
465  vtkBooleanMacro(AdjustTitlePosition, vtkTypeBool);
467 
469  {
470  AlignLeft = 0x1,
471  AlignRight = 0x2,
472  AlignHCenter = 0x4,
473  AlignTop = 0x10,
474  AlignBottom = 0x20,
475  AlignVCenter = 0x40,
476  AlignAxisLeft = 0x100,
477  AlignAxisRight = 0x200,
478  AlignAxisHCenter = 0x400,
479  AlignAxisTop = 0x1000,
480  AlignAxisBottom = 0x2000,
481  AlignAxisVCenter = 0x4000
482  };
483 
485 
492  vtkSetMacro(AdjustTitlePositionMode, int);
493  vtkGetMacro(AdjustTitlePositionMode, int);
495 
497 
505  vtkSetVector2Macro(LegendPosition, double);
506  vtkGetVector2Macro(LegendPosition, double);
507  vtkSetVector2Macro(LegendPosition2, double);
508  vtkGetVector2Macro(LegendPosition2, double);
510 
512 
516  vtkGetObjectMacro(TitleTextProperty, vtkTextProperty);
518 
520 
525  vtkGetObjectMacro(AxisTitleTextProperty, vtkTextProperty);
527 
529 
534  vtkGetObjectMacro(AxisLabelTextProperty, vtkTextProperty);
536 
538 
541  vtkSetMacro(Logx, vtkTypeBool);
542  vtkGetMacro(Logx, vtkTypeBool);
543  vtkBooleanMacro(Logx, vtkTypeBool);
545 
547 
551  virtual void SetLabelFormat(const char*);
552  const char* GetLabelFormat() { return this->GetXLabelFormat(); }
554 
556 
559  virtual void SetXLabelFormat(const char*);
560  vtkGetStringMacro(XLabelFormat);
562 
564 
567  virtual void SetYLabelFormat(const char*);
568  vtkGetStringMacro(YLabelFormat);
570 
572 
576  vtkSetClampMacro(Border, int, 0, 50);
577  vtkGetMacro(Border, int);
579 
581 
586  vtkGetMacro(PlotPoints, vtkTypeBool);
587  vtkSetMacro(PlotPoints, vtkTypeBool);
588  vtkBooleanMacro(PlotPoints, vtkTypeBool);
590 
592 
596  vtkGetMacro(PlotLines, vtkTypeBool);
597  vtkSetMacro(PlotLines, vtkTypeBool);
598  vtkBooleanMacro(PlotLines, vtkTypeBool);
600 
602 
607  vtkSetClampMacro(GlyphSize, double, 0.0, 0.2);
608  vtkGetMacro(GlyphSize, double);
610 
615  void ViewportToPlotCoordinate(vtkViewport* viewport, double& u, double& v);
616 
618 
624  vtkSetVector2Macro(PlotCoordinate, double);
625  vtkGetVector2Macro(PlotCoordinate, double);
627 
631  void PlotToViewportCoordinate(vtkViewport* viewport, double& u, double& v);
632 
634 
641  vtkSetVector2Macro(ViewportCoordinate, double);
642  vtkGetVector2Macro(ViewportCoordinate, double);
644 
649  int IsInPlot(vtkViewport* viewport, double u, double v);
650 
652 
656  vtkSetMacro(ChartBox, vtkTypeBool);
657  vtkGetMacro(ChartBox, vtkTypeBool);
658  vtkBooleanMacro(ChartBox, vtkTypeBool);
660 
662 
666  vtkSetMacro(ChartBorder, vtkTypeBool);
667  vtkGetMacro(ChartBorder, vtkTypeBool);
668  vtkBooleanMacro(ChartBorder, vtkTypeBool);
670 
674  vtkProperty2D* GetChartBoxProperty() { return this->ChartBoxActor->GetProperty(); }
675 
677 
680  vtkSetMacro(ShowReferenceXLine, vtkTypeBool);
681  vtkGetMacro(ShowReferenceXLine, vtkTypeBool);
682  vtkBooleanMacro(ShowReferenceXLine, vtkTypeBool);
684 
686 
689  vtkSetMacro(ReferenceXValue, double);
690  vtkGetMacro(ReferenceXValue, double);
692 
694 
697  vtkSetMacro(ShowReferenceYLine, vtkTypeBool);
698  vtkGetMacro(ShowReferenceYLine, vtkTypeBool);
699  vtkBooleanMacro(ShowReferenceYLine, vtkTypeBool);
701 
703 
706  vtkSetMacro(ReferenceYValue, double);
707  vtkGetMacro(ReferenceYValue, double);
709 
713  vtkMTimeType GetMTime() override;
714 
718  void PrintAsCSV(ostream& os);
719 
721 
727  int RenderOverlay(vtkViewport*) override;
728  int RenderTranslucentPolygonalGeometry(vtkViewport*) override { return 0; }
730 
735 
742 
744 
750 
752 
755  vtkSetMacro(YTitlePosition, int);
756  vtkGetMacro(YTitlePosition, int);
757  void SetYTitlePositionToTop() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_TOP); }
758  void SetYTitlePositionToHCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_HCENTER); }
759  void SetYTitlePositionToVCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_VCENTER); }
761 
763 
766  virtual void SetPlotGlyphType(int, int);
767  virtual void SetLineWidth(double);
768  virtual void AddUserCurvesPoint(double, double, double);
769  virtual void RemoveAllActiveCurves();
771 
773 
776  virtual void SetLegendBorder(int);
777  virtual void SetLegendBox(int);
778  virtual void SetLegendUseBackground(int);
779  virtual void SetLegendBackgroundColor(double, double, double);
781 
783 
786  virtual void SetTitleColor(double, double, double);
787  virtual void SetTitleFontFamily(int);
788  virtual void SetTitleBold(int);
789  virtual void SetTitleItalic(int);
790  virtual void SetTitleShadow(int);
791  virtual void SetTitleFontSize(int);
792  virtual void SetTitleJustification(int);
793  virtual void SetTitleVerticalJustification(int);
795 
797 
800  virtual void SetXAxisColor(double, double, double);
801  virtual void SetYAxisColor(double, double, double);
803 
805 
808  virtual void SetAxisTitleColor(double, double, double);
809  virtual void SetAxisTitleFontFamily(int);
810  virtual void SetAxisTitleBold(int);
811  virtual void SetAxisTitleItalic(int);
812  virtual void SetAxisTitleShadow(int);
813  virtual void SetAxisTitleFontSize(int);
814  virtual void SetAxisTitleJustification(int);
817 
819 
822  virtual void SetAxisLabelColor(double, double, double);
823  virtual void SetAxisLabelFontFamily(int);
824  virtual void SetAxisLabelBold(int);
825  virtual void SetAxisLabelItalic(int);
826  virtual void SetAxisLabelShadow(int);
827  virtual void SetAxisLabelFontSize(int);
828  virtual void SetAxisLabelJustification(int);
831 
832 protected:
834  ~vtkXYPlotActor() override;
835 
836  vtkXYPlotActorConnections* InputConnectionHolder;
837  char** SelectedInputScalars; // list of data set arrays to plot
839  vtkXYPlotActorConnections* DataObjectInputConnectionHolder; // list of data objects to plot
840  char* Title;
841  char* XTitle;
843  int XValues;
849  double XRange[2];
850  double YRange[2];
851  double XComputedRange[2]; // range actually used by plot
852  double YComputedRange[2]; // range actually used by plot
853  int Border;
864  double TitlePosition[2];
866 
870 
873 
876 
877  double ViewportCoordinate[2];
878  double PlotCoordinate[2];
879 
880  // Handle data objects and datasets
886 
887  // The data drawn within the axes. Each curve is one polydata.
888  // color is controlled by scalar data. The curves are appended
889  // together, possibly glyphed with point symbols.
897 
898  // Legends and plot symbols. The legend also keeps track of
899  // the symbols and such.
901  double LegendPosition[2];
902  double LegendPosition2[2];
906  double GlyphSize;
907 
908  // Background box
917 
918  // Reference lines
923 
927 
928  // Keep track of changes.
929  int CachedSize[2];
931 
932  void ComputeXRange(double range[2], double* lengths);
933  void ComputeYRange(double range[2]);
934  void ComputeDORange(double xrange[2], double yrange[2], double* lengths);
935 
936  virtual void CreatePlotData(
937  int* pos, int* pos2, double xRange[2], double yRange[2], double* norms, int numDS, int numDO);
938  void PlaceAxes(vtkViewport* viewport, const int* size, int pos[2], int pos2[2]);
939  void GenerateClipPlanes(int* pos, int* pos2);
940  double ComputeGlyphScale(int i, int* pos, int* pos2);
941  void ClipPlotData(int* pos, int* pos2, vtkPolyData* pd);
942  double* TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3]);
943 
945 
949 
950 private:
951  vtkXYPlotActor(const vtkXYPlotActor&) = delete;
952  void operator=(const vtkXYPlotActor&) = delete;
953 
954  bool DoesConnectionMatch(int i, vtkAlgorithmOutput* in);
955 
956  int IsInputPresent(vtkAlgorithmOutput* in, const char* arrayName, int component);
957 
961  int YTitleSize[2];
962 
966  int YTitlePosition;
967 
969 
972  int YTitleDelta;
974 };
975 
976 VTK_ABI_NAMESPACE_END
977 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:35
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:55
maintain an unordered list of dataset objects
abstract class to specify dataset behavior
Definition: vtkDataSet.h:53
dynamic, self-adjusting array of double
copy oriented and scaled glyph geometry to every input point (2D specialization)
Definition: vtkGlyph2D.h:32
create 2D glyphs represented by vtkPolyData
a simple class to control print indentation
Definition: vtkIndent.h:29
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:35
draw symbols with text
implicit function for convex set of planes
Definition: vtkPlanes.h:42
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:80
represent surface properties of a 2D image
Definition: vtkProperty2D.h:30
An actor that displays text.
Definition: vtkTextActor.h:46
2D text annotation
Definition: vtkTextMapper.h:40
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:25
abstract specification for Viewports
Definition: vtkViewport.h:45
window superclass for vtkRenderWindow
Definition: vtkWindow.h:28
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