Man page - qwtplottradingcurve(3)
Packages contains this manual
Manual
QwtPlotTradingCurve
NAMESYNOPSIS
Public Types
Public Member Functions
Protected Member Functions
Detailed Description
Member Enumeration Documentation
enum QwtPlotTradingCurve::Direction
enum QwtPlotTradingCurve::PaintAttribute
enum QwtPlotTradingCurve::SymbolStyle
Constructor & Destructor Documentation
QwtPlotTradingCurve::QwtPlotTradingCurve (const QString & title =QString()) [explicit]
QwtPlotTradingCurve::QwtPlotTradingCurve (const QwtText & title) [explicit]
Member Function Documentation
QRectF QwtPlotTradingCurve::boundingRect () const [virtual]
void QwtPlotTradingCurve::drawBar (QPainter * painter, const QwtOHLCSample& sample, Qt::Orientation orientation, bool inverted, double width)const [protected]
void QwtPlotTradingCurve::drawCandleStick (QPainter * painter, constQwtOHLCSample & sample, Qt::Orientation orientation, double width)const [protected]
void QwtPlotTradingCurve::drawSeries (QPainter * painter, const QwtScaleMap& xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [virtual]
void QwtPlotTradingCurve::drawSymbols (QPainter * painter, constQwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF &canvasRect, int from, int to) const [protected], [virtual]
void QwtPlotTradingCurve::drawUserSymbol (QPainter * painter, SymbolStylesymbolStyle, const QwtOHLCSample & sample, Qt::Orientation orientation,bool inverted, double symbolWidth) const [protected], [virtual]
QwtGraphic QwtPlotTradingCurve::legendIcon (int index, const QSizeF & size)const [virtual]
double QwtPlotTradingCurve::maxSymbolWidth () const
double QwtPlotTradingCurve::minSymbolWidth () const
int QwtPlotTradingCurve::rtti () const [virtual]
double QwtPlotTradingCurve::scaledSymbolWidth (const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect) const [protected],[virtual]
void QwtPlotTradingCurve::setMaxSymbolWidth (double width)
void QwtPlotTradingCurve::setMinSymbolWidth (double width)
void QwtPlotTradingCurve::setPaintAttribute (PaintAttribute attribute, boolon = true)
void QwtPlotTradingCurve::setSamples (const QVector< QwtOHLCSample > &samples)
void QwtPlotTradingCurve::setSamples (QwtSeriesData< QwtOHLCSample > *data)
void QwtPlotTradingCurve::setSymbolBrush (Direction direction, const QBrush& brush)
void QwtPlotTradingCurve::setSymbolExtent (double extent)
void QwtPlotTradingCurve::setSymbolPen (const QColor & color, qreal width =0.0, Qt::PenStyle style = Qt::SolidLine)
void QwtPlotTradingCurve::setSymbolPen (const QPen & pen)
void QwtPlotTradingCurve::setSymbolStyle (SymbolStyle style)
QBrush QwtPlotTradingCurve::symbolBrush (Direction direction) const
double QwtPlotTradingCurve::symbolExtent () const
QPen QwtPlotTradingCurve::symbolPen () const
QwtPlotTradingCurve::SymbolStyle QwtPlotTradingCurve::symbolStyle () const
bool QwtPlotTradingCurve::testPaintAttribute (PaintAttribute attribute)const
Author
NAME
QwtPlotTradingCurve - QwtPlotTradingCurve illustrates movements in the price of a financial instrument over time.
SYNOPSIS
#include <qwt_plot_tradingcurve.h>
Inherits QwtPlotSeriesItem , and QwtSeriesStore< QwtOHLCSample > .
Public Types
enum
SymbolStyle
{
NoSymbol
= -1,
Bar
,
CandleStick
,
UserSymbol
= 100 }
Symbol styles.
enum
Direction
{
Increasing
,
Decreasing
}
Direction of a price movement.
enum
PaintAttribute
{
ClipSymbols
= 0x01 }
typedef QFlags<
PaintAttribute
>
PaintAttributes
Paint attributes.
Public Member Functions
QwtPlotTradingCurve
(const QString &
title
=QString())
QwtPlotTradingCurve
(const
QwtText
&
title
)
virtual
˜QwtPlotTradingCurve
()
Destructor.
virtual int
rtti
() const
void
setPaintAttribute
(
PaintAttribute
, bool
on=true)
bool
testPaintAttribute
(
PaintAttribute
) const
void
setSamples
(const QVector<
QwtOHLCSample
> &)
void
setSamples
(
QwtSeriesData
<
QwtOHLCSample
> *)
void
setSymbolStyle
(
SymbolStyle
style)
SymbolStyle symbolStyle
() const
void
setSymbolPen
(const QColor &, qreal
width=0.0, Qt::PenStyle=Qt::SolidLine)
void
setSymbolPen
(const QPen &)
Set the symbol pen.
QPen
symbolPen
() const
void
setSymbolBrush
(
Direction
, const QBrush
&)
QBrush
symbolBrush
(
Direction
) const
void
setSymbolExtent
(double)
Set the extent of the symbol.
double
symbolExtent
() const
void
setMinSymbolWidth
(double)
double
minSymbolWidth
() const
void
setMaxSymbolWidth
(double)
double
maxSymbolWidth
() const
virtual void
drawSeries
(QPainter *painter, const
QwtScaleMap
&xMap, const
QwtScaleMap
&yMap, const QRectF &canvasRect, int from, int to)
const
virtual QRectF
boundingRect
() const
virtual
QwtGraphic legendIcon
(int index, const
QSizeF &) const
Protected Member Functions
void
init
()
Initialize internal members.
virtual void
drawSymbols
(QPainter *, const
QwtScaleMap
&xMap, const
QwtScaleMap
&yMap, const QRectF &canvasRect, int from, int to)
const
virtual void
drawUserSymbol
(QPainter *,
SymbolStyle
, const
QwtOHLCSample
&,
Qt::Orientation, bool inverted, double symbolWidth) const
Draw a symbol for a symbol style >= UserSymbol.
void
drawBar
(QPainter *painter, const
QwtOHLCSample
&, Qt::Orientation, bool inverted,
double width) const
Draw a bar.
void
drawCandleStick
(QPainter *, const
QwtOHLCSample
&, Qt::Orientation, double width)
const
Draw a candle stick.
virtual double
scaledSymbolWidth
(const
QwtScaleMap
&xMap, const
QwtScaleMap
&yMap, const QRectF &canvasRect) const
Detailed Description
QwtPlotTradingCurve illustrates movements in the price of a financial instrument over time.
QwtPlotTradingCurve supports candlestick or bar ( OHLC ) charts that are used in the domain of technical analysis.
While the length ( height or width depending on orientation() ) of each symbol depends on the corresponding OHLC sample the size of the other dimension can be controlled using:
|
• |
setSymbolExtent() |
|||
|
• |
setSymbolMinWidth() |
|||
|
• |
setSymbolMaxWidth() |
The extent is a size in scale coordinates, so that the symbol width is increasing when the plot is zoomed in. Minimum/Maximum width is in widget coordinates independent from the zoom level. When setting the minimum and maximum to the same value, the width of the symbol is fixed.
Member Enumeration Documentation
enum QwtPlotTradingCurve::Direction
Direction of a price movement.
Enumerator
Increasing
The closing price is higher than the opening price.
Decreasing
The closing price is lower than the opening price.
enum QwtPlotTradingCurve::PaintAttribute
Attributes to modify the drawing algorithm.
See also:
setPaintAttribute() , testPaintAttribute()
Enumerator
ClipSymbols
Check if a symbol is on the plot canvas before painting it.
enum QwtPlotTradingCurve::SymbolStyle
Symbol styles. The default setting is QwtPlotSeriesItem::CandleStick.
See also:
setSymbolStyle() , symbolStyle()
Enumerator
NoSymbol
Nothing is displayed.
|
Bar |
A line on the chart shows the price range (the highest and lowest prices) over one unit of time, e.g. one day or one hour. Tick marks project from each side of the line indicating the opening and closing price. |
CandleStick
The range between opening/closing price are displayed as a filled box. The fill brush depends on the direction of the price movement. The box is connected to the highest/lowest values by lines.
UserSymbol
SymbolTypes >= UserSymbol are displayed by drawUserSymbol() , that needs to be overloaded and implemented in derived curve classes.
See also:
drawUserSymbol()
Constructor & Destructor Documentation
QwtPlotTradingCurve::QwtPlotTradingCurve (const QString & title =QString()) [explicit]
Constructor
Parameters:
title Title of the curve
QwtPlotTradingCurve::QwtPlotTradingCurve (const QwtText & title) [explicit]
Constructor
Parameters:
title Title of the curve
Member Function Documentation
QRectF QwtPlotTradingCurve::boundingRect () const [virtual]
Returns:
Bounding rectangle of all samples. For an empty series the rectangle is invalid.
Reimplemented from QwtPlotSeriesItem .
void QwtPlotTradingCurve::drawBar (QPainter * painter, const QwtOHLCSample& sample, Qt::Orientation orientation, bool inverted, double width)const [protected]
Draw a bar.
Parameters:
painter
Qt painter,
initialized with pen/brush
sample
Sample, already translated into paint device
coordinates
orientation
Vertical or horizontal
inverted
When inverted is false the open tick is painted
to the left/top, otherwise it is painted right/bottom. The
close tick is painted in the opposite direction of the open
tick. painted in the opposite d opposite direction.
width
Width or height of the candle, depending on the
orientation
See also:
Bar
void QwtPlotTradingCurve::drawCandleStick (QPainter * painter, constQwtOHLCSample & sample, Qt::Orientation orientation, double width)const [protected]
Draw a candle stick.
Parameters:
painter
Qt painter,
initialized with pen/brush
sample
Samples already translated into paint device
coordinates
orientation
Vertical or horizontal
width
Width or height of the candle, depending on the
orientation
See also:
CandleStick
void QwtPlotTradingCurve::drawSeries (QPainter * painter, const QwtScaleMap& xMap, const QwtScaleMap & yMap, const QRectF & canvasRect, int from,int to) const [virtual]
Draw an interval of the curve
Parameters:
painter
Painter
xMap
Maps x-values into pixel coordinates.
yMap
Maps y-values into pixel coordinates.
canvasRect
Contents rectangle of the canvas
from
Index of the first point to be painted
to
Index of the last point to be painted. If to < 0
the curve will be painted to its last point.
See also:
drawSymbols()
Implements QwtPlotSeriesItem .
void QwtPlotTradingCurve::drawSymbols (QPainter * painter, constQwtScaleMap & xMap, const QwtScaleMap & yMap, const QRectF &canvasRect, int from, int to) const [protected], [virtual]
Draw symbols
Parameters:
painter
Painter
xMap
x map
yMap
y map
canvasRect
Contents rectangle of the canvas
from
Index of the first point to be painted
to
Index of the last point to be painted
See also:
drawSeries()
void QwtPlotTradingCurve::drawUserSymbol (QPainter * painter, SymbolStylesymbolStyle, const QwtOHLCSample & sample, Qt::Orientation orientation,bool inverted, double symbolWidth) const [protected], [virtual]
Draw a symbol for a symbol style >= UserSymbol. The implementation does nothing and is intended to be overloaded
Parameters:
painter
Qt painter,
initialized with pen/brush
symbolStyle
Symbol style
sample
Samples already translated into paint device
coordinates
orientation
Vertical or horizontal
inverted
True, when the opposite scale ( Qt::Vertical:
x, Qt::Horizontal: y ) is increasing in the opposite
direction as QPainter coordinates.
symbolWidth
Width of the symbol in paint device
coordinates
QwtGraphic QwtPlotTradingCurve::legendIcon (int index, const QSizeF & size)const [virtual]
Returns:
A rectangle filled with the color of the symbol pen
Parameters:
index
Index of the
legend entry ( usually there is only one )
size
Icon size
See also:
setLegendIconSize() , legendData()
Reimplemented from QwtPlotItem .
double QwtPlotTradingCurve::maxSymbolWidth () const
Returns:
Maximum for the symbol width
See also:
setMaxSymbolWidth() , minSymbolWidth() , symbolExtent()
double QwtPlotTradingCurve::minSymbolWidth () const
Returns:
Minmum for the symbol width
See also:
setMinSymbolWidth() , maxSymbolWidth() , symbolExtent()
int QwtPlotTradingCurve::rtti () const [virtual]
Returns:
QwtPlotItem::Rtti_PlotTradingCurve
Reimplemented from QwtPlotItem .
double QwtPlotTradingCurve::scaledSymbolWidth (const QwtScaleMap & xMap,const QwtScaleMap & yMap, const QRectF & canvasRect) const [protected],[virtual]
Calculate the symbol width in paint coordinates
The width is calculated by scaling the symbol extent into paint device coordinates bounded by the minimum/maximum symbol width.
Parameters:
xMap
Maps x-values into
pixel coordinates.
yMap
Maps y-values into pixel coordinates.
canvasRect
Contents rectangle of the canvas
Returns:
Symbol width in paint coordinates
See also:
symbolExtent() , minSymbolWidth() , maxSymbolWidth()
void QwtPlotTradingCurve::setMaxSymbolWidth (double width)
Set a maximum for the symbol width
A value <= 0.0 means an unlimited width
Parameters:
width Width in paint device coordinates
See also:
maxSymbolWidth() , setMinSymbolWidth() , setSymbolExtent()
void QwtPlotTradingCurve::setMinSymbolWidth (double width)
Set a minimum for the symbol width
Parameters:
width Width in paint device coordinates
See also:
minSymbolWidth() , setMaxSymbolWidth() , setSymbolExtent()
void QwtPlotTradingCurve::setPaintAttribute (PaintAttribute attribute, boolon = true)
Specify an attribute how to draw the curve
Parameters:
attribute
Paint
attribute
on
On/Off
See also:
testPaintAttribute()
void QwtPlotTradingCurve::setSamples (const QVector< QwtOHLCSample > &samples)
Initialize data with an array of samples.
Parameters:
samples Vector of samples
See also:
QwtPlotSeriesItem::setData()
void QwtPlotTradingCurve::setSamples (QwtSeriesData< QwtOHLCSample > *data)
Assign a series of samples
setSamples() is just a wrapper for setData() without any additional value - beside that it is easier to find for the developer.
Parameters:
data Data
Warning:
The item takes ownership of the data object, deleting it when its not used anymore.
void QwtPlotTradingCurve::setSymbolBrush (Direction direction, const QBrush& brush)
Set the symbol brush
Parameters:
direction
Direction type
brush
Brush used to fill the body of all candlestick
symbols with the direction
See also:
symbolBrush() , setSymbolPen()
void QwtPlotTradingCurve::setSymbolExtent (double extent)
Set the extent of the symbol. The width of the symbol is given in scale coordinates. When painting a symbol the width is scaled into paint device coordinates by scaledSymbolWidth() . The scaled width is bounded by minSymbolWidth() , maxSymbolWidth()
Parameters:
extent Symbol width in scale coordinates
See also:
symbolExtent() , scaledSymbolWidth() , setMinSymbolWidth() , setMaxSymbolWidth()
void QwtPlotTradingCurve::setSymbolPen (const QColor & color, qreal width =0.0, Qt::PenStyle style = Qt::SolidLine)
Build and assign the symbol pen
In Qt5 the default pen width is 1.0 ( 0.0 in Qt4 ) what makes it non cosmetic ( see QPen::isCosmetic() ). This method has been introduced to hide this incompatibility.
Parameters:
color
Pen color
width
Pen width
style
Pen style
See also:
pen(), brush()
void QwtPlotTradingCurve::setSymbolPen (const QPen & pen)
Set the symbol pen. The symbol pen is used for rendering the lines of the bar or candlestick symbols
See also:
symbolPen() , setSymbolBrush()
void QwtPlotTradingCurve::setSymbolStyle (SymbolStyle style)
Set the symbol style
Parameters:
style Symbol style
See also:
symbolStyle() , setSymbolExtent() , setSymbolPen() , setSymbolBrush()
QBrush QwtPlotTradingCurve::symbolBrush (Direction direction) const
Parameters:
direction
Returns:
Brush used to fill the body of all candlestick symbols with the direction
See also:
setSymbolPen() , symbolBrush()
double QwtPlotTradingCurve::symbolExtent () const
Returns:
Extent of a symbol in scale coordinates
See also:
setSymbolExtent() , scaledSymbolWidth() , minSymbolWidth() , maxSymbolWidth()
QPen QwtPlotTradingCurve::symbolPen () const
Returns:
Symbol pen
See also:
setSymbolPen() , symbolBrush()
QwtPlotTradingCurve::SymbolStyle QwtPlotTradingCurve::symbolStyle () const
Returns:
Symbol style
See also:
setSymbolStyle() , symbolExtent() , symbolPen() , symbolBrush()
bool QwtPlotTradingCurve::testPaintAttribute (PaintAttribute attribute)const
Returns:
True, when attribute is enabled
See also:
PaintAttribute , setPaintAttribute()
Author
Generated automatically by Doxygen for Qwt User’s Guide from the source code.