VTK  9.2.5
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 =========================================================================*/
110 #ifndef vtkXYPlotActor_h
111 #define vtkXYPlotActor_h
112 
113 #define VTK_XYPLOT_INDEX 0
114 #define VTK_XYPLOT_ARC_LENGTH 1
115 #define VTK_XYPLOT_NORMALIZED_ARC_LENGTH 2
116 #define VTK_XYPLOT_VALUE 3
117 
118 #define VTK_XYPLOT_ROW 0
119 #define VTK_XYPLOT_COLUMN 1
120 
121 #define VTK_XYPLOT_Y_AXIS_TOP 0
122 #define VTK_XYPLOT_Y_AXIS_HCENTER 1
123 #define VTK_XYPLOT_Y_AXIS_VCENTER 2 // rotate by 90 degrees (y-axis aligned)
124 
125 #include "vtkActor2D.h"
126 #include "vtkRenderingAnnotationModule.h" // For export macro
127 #include "vtkSmartPointer.h" // For SP
128 
129 class vtkXYPlotActorConnections;
130 class vtkAlgorithmOutput;
131 class vtkAppendPolyData;
132 class vtkAxisActor2D;
133 class vtkDataObject;
135 class vtkDataSet;
137 class vtkDoubleArray;
138 class vtkGlyph2D;
139 class vtkGlyphSource2D;
140 class vtkIntArray;
141 class vtkLegendBoxActor;
142 class vtkPlanes;
143 class vtkPolyData;
144 class vtkPolyDataMapper2D;
145 class vtkTextActor;
146 class vtkTextMapper;
147 class vtkTextProperty;
148 
149 class VTKRENDERINGANNOTATION_EXPORT vtkXYPlotActor : public vtkActor2D
150 {
151 public:
152  vtkTypeMacro(vtkXYPlotActor, vtkActor2D);
153  void PrintSelf(ostream& os, vtkIndent indent) override;
154 
161  static vtkXYPlotActor* New();
162 
163  //---Data Set Input----------------------------------------------------------
164  // The following methods are used to plot input datasets. Datasets
165  // will be plotted if set as input; otherwise the input data objects
166  // will be plotted (if defined).
167 
169 
177  void AddDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
178  void AddDataSetInput(vtkDataSet* ds) { this->AddDataSetInput(ds, nullptr, 0); }
179  void AddDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
181  {
182  this->AddDataSetInputConnection(in, nullptr, 0);
183  }
185 
187 
190  void RemoveDataSetInput(vtkDataSet* ds, const char* arrayName, int component);
191  void RemoveDataSetInput(vtkDataSet* ds) { this->RemoveDataSetInput(ds, nullptr, 0); }
192  void RemoveDataSetInputConnection(vtkAlgorithmOutput* in, const char* arrayName, int component);
194  {
195  this->RemoveDataSetInputConnection(in, nullptr, 0);
196  }
198 
204 
206 
210  void SetPointComponent(int i, int comp);
211  int GetPointComponent(int i);
212  //---end Data Set Input-----------------------------------------------------
214 
216 
226  vtkSetClampMacro(XValues, int, VTK_XYPLOT_INDEX, VTK_XYPLOT_VALUE);
227  vtkGetMacro(XValues, int);
228  void SetXValuesToIndex() { this->SetXValues(VTK_XYPLOT_INDEX); }
229  void SetXValuesToArcLength() { this->SetXValues(VTK_XYPLOT_ARC_LENGTH); }
231  void SetXValuesToValue() { this->SetXValues(VTK_XYPLOT_VALUE); }
232  const char* GetXValuesAsString();
234 
235  //---Data Object Input------------------------------------------------------
236  // The following methods are used to plot input data objects. Datasets will
237  // be plotted in preference to data objects if set as input; otherwise the
238  // input data objects will be plotted (if defined).
239 
241 
247 
249 
255 
257 
262  vtkSetClampMacro(DataObjectPlotMode, int, VTK_XYPLOT_ROW, VTK_XYPLOT_COLUMN);
263  vtkGetMacro(DataObjectPlotMode, int);
264  void SetDataObjectPlotModeToRows() { this->SetDataObjectPlotMode(VTK_XYPLOT_ROW); }
265  void SetDataObjectPlotModeToColumns() { this->SetDataObjectPlotMode(VTK_XYPLOT_COLUMN); }
268 
270 
278  void SetDataObjectXComponent(int i, int comp);
281 
283 
291  void SetDataObjectYComponent(int i, int comp);
293  //---end Data Object Input--------------------------------------------------
295 
296  //---Per Curve Properties---------------------------------------------------
297  // The following methods are used to set properties on each curve that is
298  // plotted. Each input dataset (or data object) results in one curve. The
299  // methods that follow have an index i that corresponds to the input dataset
300  // or data object.
301  void SetPlotColor(int i, double r, double g, double b);
302  void SetPlotColor(int i, const double color[3])
303  {
304  this->SetPlotColor(i, color[0], color[1], color[2]);
305  }
306  double* GetPlotColor(int i) VTK_SIZEHINT(3);
307  void SetPlotSymbol(int i, vtkPolyData* input);
309  void SetPlotLabel(int i, const char* label);
310  const char* GetPlotLabel(int i);
311 
312  // Allow per-curve specification of line and point rendering. These override
313  // global settings PlotPoints and PlotLines. If not on, the default behavior
314  // is governed by PlotPoints and PlotLines ivars.
315  vtkGetMacro(PlotCurvePoints, vtkTypeBool);
316  vtkSetMacro(PlotCurvePoints, vtkTypeBool);
317  vtkBooleanMacro(PlotCurvePoints, vtkTypeBool);
318 
319  vtkGetMacro(PlotCurveLines, vtkTypeBool);
320  vtkSetMacro(PlotCurveLines, vtkTypeBool);
321  vtkBooleanMacro(PlotCurveLines, vtkTypeBool);
322 
323  void SetPlotLines(int i, int);
324  int GetPlotLines(int i);
325 
326  void SetPlotPoints(int i, int);
327  int GetPlotPoints(int i);
328  //---end Per Curve Properties-----------------------------------------------
329 
331 
335  vtkSetMacro(ExchangeAxes, vtkTypeBool);
336  vtkGetMacro(ExchangeAxes, vtkTypeBool);
337  vtkBooleanMacro(ExchangeAxes, vtkTypeBool);
339 
341 
346  vtkSetMacro(ReverseXAxis, vtkTypeBool);
347  vtkGetMacro(ReverseXAxis, vtkTypeBool);
348  vtkBooleanMacro(ReverseXAxis, vtkTypeBool);
350 
352 
357  vtkSetMacro(ReverseYAxis, vtkTypeBool);
358  vtkGetMacro(ReverseYAxis, vtkTypeBool);
359  vtkBooleanMacro(ReverseYAxis, vtkTypeBool);
361 
363 
369  vtkGetObjectMacro(LegendActor, vtkLegendBoxActor);
370  vtkGetObjectMacro(GlyphSource, vtkGlyphSource2D);
372 
374 
377  vtkSetStringMacro(Title);
378  vtkGetStringMacro(Title);
380 
382 
385  vtkSetStringMacro(XTitle);
386  vtkGetStringMacro(XTitle);
388 
390 
393  virtual void SetYTitle(const char*);
394  char* GetYTitle();
396 
398 
402  vtkAxisActor2D* GetXAxisActor2D() { return this->XAxis; }
403  vtkAxisActor2D* GetYAxisActor2D() { return this->YAxis; }
405 
407 
415  vtkSetVector2Macro(XRange, double);
416  vtkGetVectorMacro(XRange, double, 2);
417  vtkSetVector2Macro(YRange, double);
418  vtkGetVectorMacro(YRange, double, 2);
419  void SetPlotRange(double xmin, double ymin, double xmax, double ymax)
420  {
421  this->SetXRange(xmin, xmax);
422  this->SetYRange(ymin, ymax);
423  }
425 
427 
433  vtkSetClampMacro(NumberOfXLabels, int, 0, 50);
434  vtkGetMacro(NumberOfXLabels, int);
435  vtkSetClampMacro(NumberOfYLabels, int, 0, 50);
436  vtkGetMacro(NumberOfYLabels, int);
437  void SetNumberOfLabels(int num)
438  {
439  this->SetNumberOfXLabels(num);
440  this->SetNumberOfYLabels(num);
441  }
443 
445 
452  void SetAdjustXLabels(int adjust);
453  vtkGetMacro(AdjustXLabels, int);
454  void SetAdjustYLabels(int adjust);
455  vtkGetMacro(AdjustYLabels, int);
457 
459 
462  void SetNumberOfXMinorTicks(int num);
464  void SetNumberOfYMinorTicks(int num);
467 
469 
474  vtkSetMacro(Legend, vtkTypeBool);
475  vtkGetMacro(Legend, vtkTypeBool);
476  vtkBooleanMacro(Legend, vtkTypeBool);
478 
480 
484  vtkSetVector2Macro(TitlePosition, double);
485  vtkGetVector2Macro(TitlePosition, double);
487 
489 
493  vtkSetMacro(AdjustTitlePosition, vtkTypeBool);
494  vtkGetMacro(AdjustTitlePosition, vtkTypeBool);
495  vtkBooleanMacro(AdjustTitlePosition, vtkTypeBool);
497 
499  {
500  AlignLeft = 0x1,
501  AlignRight = 0x2,
502  AlignHCenter = 0x4,
503  AlignTop = 0x10,
504  AlignBottom = 0x20,
505  AlignVCenter = 0x40,
506  AlignAxisLeft = 0x100,
507  AlignAxisRight = 0x200,
508  AlignAxisHCenter = 0x400,
509  AlignAxisTop = 0x1000,
510  AlignAxisBottom = 0x2000,
511  AlignAxisVCenter = 0x4000
512  };
513 
515 
522  vtkSetMacro(AdjustTitlePositionMode, int);
523  vtkGetMacro(AdjustTitlePositionMode, int);
525 
527 
535  vtkSetVector2Macro(LegendPosition, double);
536  vtkGetVector2Macro(LegendPosition, double);
537  vtkSetVector2Macro(LegendPosition2, double);
538  vtkGetVector2Macro(LegendPosition2, double);
540 
542 
546  vtkGetObjectMacro(TitleTextProperty, vtkTextProperty);
548 
550 
555  vtkGetObjectMacro(AxisTitleTextProperty, vtkTextProperty);
557 
559 
564  vtkGetObjectMacro(AxisLabelTextProperty, vtkTextProperty);
566 
568 
571  vtkSetMacro(Logx, vtkTypeBool);
572  vtkGetMacro(Logx, vtkTypeBool);
573  vtkBooleanMacro(Logx, vtkTypeBool);
575 
577 
581  virtual void SetLabelFormat(const char*);
582  const char* GetLabelFormat() { return this->GetXLabelFormat(); }
584 
586 
589  virtual void SetXLabelFormat(const char*);
590  vtkGetStringMacro(XLabelFormat);
592 
594 
597  virtual void SetYLabelFormat(const char*);
598  vtkGetStringMacro(YLabelFormat);
600 
602 
606  vtkSetClampMacro(Border, int, 0, 50);
607  vtkGetMacro(Border, int);
609 
611 
616  vtkGetMacro(PlotPoints, vtkTypeBool);
617  vtkSetMacro(PlotPoints, vtkTypeBool);
618  vtkBooleanMacro(PlotPoints, vtkTypeBool);
620 
622 
626  vtkGetMacro(PlotLines, vtkTypeBool);
627  vtkSetMacro(PlotLines, vtkTypeBool);
628  vtkBooleanMacro(PlotLines, vtkTypeBool);
630 
632 
637  vtkSetClampMacro(GlyphSize, double, 0.0, 0.2);
638  vtkGetMacro(GlyphSize, double);
640 
645  void ViewportToPlotCoordinate(vtkViewport* viewport, double& u, double& v);
646 
648 
654  vtkSetVector2Macro(PlotCoordinate, double);
655  vtkGetVector2Macro(PlotCoordinate, double);
657 
661  void PlotToViewportCoordinate(vtkViewport* viewport, double& u, double& v);
662 
664 
671  vtkSetVector2Macro(ViewportCoordinate, double);
672  vtkGetVector2Macro(ViewportCoordinate, double);
674 
679  int IsInPlot(vtkViewport* viewport, double u, double v);
680 
682 
686  vtkSetMacro(ChartBox, vtkTypeBool);
687  vtkGetMacro(ChartBox, vtkTypeBool);
688  vtkBooleanMacro(ChartBox, vtkTypeBool);
690 
692 
696  vtkSetMacro(ChartBorder, vtkTypeBool);
697  vtkGetMacro(ChartBorder, vtkTypeBool);
698  vtkBooleanMacro(ChartBorder, vtkTypeBool);
700 
704  vtkProperty2D* GetChartBoxProperty() { return this->ChartBoxActor->GetProperty(); }
705 
707 
710  vtkSetMacro(ShowReferenceXLine, vtkTypeBool);
711  vtkGetMacro(ShowReferenceXLine, vtkTypeBool);
712  vtkBooleanMacro(ShowReferenceXLine, vtkTypeBool);
714 
716 
719  vtkSetMacro(ReferenceXValue, double);
720  vtkGetMacro(ReferenceXValue, double);
722 
724 
727  vtkSetMacro(ShowReferenceYLine, vtkTypeBool);
728  vtkGetMacro(ShowReferenceYLine, vtkTypeBool);
729  vtkBooleanMacro(ShowReferenceYLine, vtkTypeBool);
731 
733 
736  vtkSetMacro(ReferenceYValue, double);
737  vtkGetMacro(ReferenceYValue, double);
739 
743  vtkMTimeType GetMTime() override;
744 
748  void PrintAsCSV(ostream& os);
749 
751 
757  int RenderOverlay(vtkViewport*) override;
758  int RenderTranslucentPolygonalGeometry(vtkViewport*) override { return 0; }
760 
765 
772 
774 
780 
782 
785  vtkSetMacro(YTitlePosition, int);
786  vtkGetMacro(YTitlePosition, int);
787  void SetYTitlePositionToTop() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_TOP); }
788  void SetYTitlePositionToHCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_HCENTER); }
789  void SetYTitlePositionToVCenter() { this->SetYTitlePosition(VTK_XYPLOT_Y_AXIS_VCENTER); }
791 
793 
796  virtual void SetPlotGlyphType(int, int);
797  virtual void SetLineWidth(double);
798  virtual void AddUserCurvesPoint(double, double, double);
799  virtual void RemoveAllActiveCurves();
801 
803 
806  virtual void SetLegendBorder(int);
807  virtual void SetLegendBox(int);
808  virtual void SetLegendUseBackground(int);
809  virtual void SetLegendBackgroundColor(double, double, double);
811 
813 
816  virtual void SetTitleColor(double, double, double);
817  virtual void SetTitleFontFamily(int);
818  virtual void SetTitleBold(int);
819  virtual void SetTitleItalic(int);
820  virtual void SetTitleShadow(int);
821  virtual void SetTitleFontSize(int);
822  virtual void SetTitleJustification(int);
823  virtual void SetTitleVerticalJustification(int);
825 
827 
830  virtual void SetXAxisColor(double, double, double);
831  virtual void SetYAxisColor(double, double, double);
833 
835 
838  virtual void SetAxisTitleColor(double, double, double);
839  virtual void SetAxisTitleFontFamily(int);
840  virtual void SetAxisTitleBold(int);
841  virtual void SetAxisTitleItalic(int);
842  virtual void SetAxisTitleShadow(int);
843  virtual void SetAxisTitleFontSize(int);
844  virtual void SetAxisTitleJustification(int);
847 
849 
852  virtual void SetAxisLabelColor(double, double, double);
853  virtual void SetAxisLabelFontFamily(int);
854  virtual void SetAxisLabelBold(int);
855  virtual void SetAxisLabelItalic(int);
856  virtual void SetAxisLabelShadow(int);
857  virtual void SetAxisLabelFontSize(int);
858  virtual void SetAxisLabelJustification(int);
861 
862 protected:
864  ~vtkXYPlotActor() override;
865 
866  vtkXYPlotActorConnections* InputConnectionHolder;
867  char** SelectedInputScalars; // list of data set arrays to plot
869  vtkXYPlotActorConnections* DataObjectInputConnectionHolder; // list of data objects to plot
870  char* Title;
871  char* XTitle;
873  int XValues;
879  double XRange[2];
880  double YRange[2];
881  double XComputedRange[2]; // range actually used by plot
882  double YComputedRange[2]; // range actually used by plot
883  int Border;
894  double TitlePosition[2];
896 
900 
903 
906 
907  double ViewportCoordinate[2];
908  double PlotCoordinate[2];
909 
910  // Handle data objects and datasets
916 
917  // The data drawn within the axes. Each curve is one polydata.
918  // color is controlled by scalar data. The curves are appended
919  // together, possibly glyphed with point symbols.
927 
928  // Legends and plot symbols. The legend also keeps track of
929  // the symbols and such.
931  double LegendPosition[2];
932  double LegendPosition2[2];
936  double GlyphSize;
937 
938  // Background box
947 
948  // Reference lines
953 
957 
958  // Keep track of changes.
959  int CachedSize[2];
961 
962  void ComputeXRange(double range[2], double* lengths);
963  void ComputeYRange(double range[2]);
964  void ComputeDORange(double xrange[2], double yrange[2], double* lengths);
965 
966  virtual void CreatePlotData(
967  int* pos, int* pos2, double xRange[2], double yRange[2], double* norms, int numDS, int numDO);
968  void PlaceAxes(vtkViewport* viewport, const int* size, int pos[2], int pos2[2]);
969  void GenerateClipPlanes(int* pos, int* pos2);
970  double ComputeGlyphScale(int i, int* pos, int* pos2);
971  void ClipPlotData(int* pos, int* pos2, vtkPolyData* pd);
972  double* TransformPoint(int pos[2], int pos2[2], double x[3], double xNew[3]);
973 
975 
979 
980 private:
981  vtkXYPlotActor(const vtkXYPlotActor&) = delete;
982  void operator=(const vtkXYPlotActor&) = delete;
983 
984  bool DoesConnectionMatch(int i, vtkAlgorithmOutput* in);
985 
986  int IsInputPresent(vtkAlgorithmOutput* in, const char* arrayName, int component);
987 
991  int YTitleSize[2];
992 
996  int YTitlePosition;
997 
999 
1002  int YTitleDelta;
1004 };
1005 
1006 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:155
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:172
dynamic, self-adjusting array of double
copy oriented and scaled glyph geometry to every input point (2D specialization)
Definition: vtkGlyph2D.h:72
create 2D glyphs represented by vtkPolyData
a simple class to control print indentation
Definition: vtkIndent.h:119
dynamic, self-adjusting array of int
Definition: vtkIntArray.h:155
draw symbols with text
implicit function for convex set of planes
Definition: vtkPlanes.h:162
draw vtkPolyData onto the image plane
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:200
represent surface properties of a 2D image
An actor that displays text.
Definition: vtkTextActor.h:166
2D text annotation
represent text properties.
record modification and/or execution time
Definition: vtkTimeStamp.h:55
abstract specification for Viewports
Definition: vtkViewport.h:56
window superclass for vtkRenderWindow
Definition: vtkWindow.h:39
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