23 #ifndef COM_DAFER45_TBTK_PLOT_PLOTTER 24 #define COM_DAFER45_TBTK_PLOT_PLOTTER 27 #include "TBTK/Plot/PlotCanvas.h" 30 #include "TBTK/Plot/Point.h" 40 #include <opencv2/core/core.hpp> 41 #include <opencv2/highgui/highgui.hpp> 75 void setBounds(
double minX,
double maxX,
double minY,
double maxY);
87 void setLabelX(
const std::string &labelX);
90 void setLabelY(
const std::string &labelY);
103 {0, 0, 0}, Decoration::LineStyle::Point
109 const std::vector<double> &axis,
110 const std::vector<double> &data,
112 {0, 0, 0}, Decoration::LineStyle::Line
118 const std::vector<double> &data,
120 {0, 0, 0}, Decoration::LineStyle::Line
128 unsigned int windowSize = 51
136 const std::vector<std::vector<double>> &data
143 {0, 0, 0}, Decoration::LineStyle::Line
149 const std::vector<std::vector<double>> &data,
150 const std::vector<std::vector<double>> &intensity,
152 {0, 0, 0}, Decoration::LineStyle::Point
161 {0, 0, 0}, Decoration::LineStyle::Point
172 void save(std::string filename);
178 bool autoScaleX, autoScaleY;
185 std::vector<Drawable*> dataStorage;
188 void drawDataStorage();
191 void clearDataStorage();
205 double paddingBottom,
222 "Plotter::setBoundsX()",
223 "minX has to be smaller than maxX",
226 this->autoScaleX =
false;
236 "Plotter::setBoundsY()",
237 "minY has to be smaller than maxY",
240 this->autoScaleY =
false;
255 this->autoScaleX = autoScaleX;
259 this->autoScaleY = autoScaleY;
276 this->canvas.setCanvas(canvas);
280 if(dataStorage.size() != 0){
298 if(dataStorage.size() != 0){
303 canvas.
save(filename);
306 inline void Plotter::clearDataStorage(){
307 for(
unsigned int n = 0; n < dataStorage.size(); n++)
308 delete dataStorage[n];
void setLabelY(const std::string &labelY)
Definition: PlotCanvas.h:261
void clear()
Definition: PlotCanvas.h:295
Property container for eigen values.
Definition: EigenValues.h:45
const cv::Mat & getCanvas() const
Definition: PlotCanvas.h:282
void plot(double x, double y, const Decoration &decoration=Decoration({0, 0, 0}, Decoration::LineStyle::Point))
void save(std::string filename) const
Definition: PlotCanvas.h:404
Property container for eigen values.
void save(std::string filename)
Definition: Plotter.h:297
void setPadding(double paddingLeft, double paddingRight, double paddingBottom, double paddingTop)
Definition: PlotCanvas.h:177
void setBoundsX(double minX, double maxX)
Definition: PlotCanvas.h:189
void setBoundsX(double minX, double maxX)
Definition: Plotter.h:216
void setBoundsY(double minY, double maxY)
Definition: PlotCanvas.h:210
Definition: PlotCanvas.h:37
void setAutoScaleY(bool autoScaleY)
Definition: Plotter.h:258
void setWidth(unsigned int width)
Definition: PlotCanvas.h:169
Definition: Decoration.h:31
void setWidth(unsigned int width)
Definition: Plotter.h:194
void setBoundsY(double minY, double maxY)
Definition: Plotter.h:230
void setHeight(unsigned int height)
Definition: PlotCanvas.h:173
void setLabelX(const std::string &labelX)
Definition: PlotCanvas.h:257
const cv::Mat & getCanvas()
Definition: Plotter.h:279
Definition: ModelFactory.h:35
Property container for density of states (DOS).
void setAutoScale(bool autoScale)
Definition: Plotter.h:262
void setPadding(double paddingLeft, double paddingRight, double paddingBottom, double paddingTop)
Definition: Plotter.h:202
void setLabelX(const std::string &labelX)
Definition: Plotter.h:267
void setLabelY(const std::string &labelY)
Definition: Plotter.h:271
Property container for density of states (DOS).
Definition: DOS.h:47
void setHeight(unsigned int height)
Definition: Plotter.h:198
void setHold(bool hold)
Definition: Plotter.h:288
void clear()
Definition: Plotter.h:292
void setAutoScaleX(bool autoScaleX)
Definition: Plotter.h:254
void setBounds(double minX, double maxX, double minY, double maxY)
Definition: Plotter.h:244
void setCanvas(cv::Mat &canvas)
Definition: Plotter.h:275