##// END OF EJS Templates
floating value layout fix for barchart
floating value layout fix for barchart

File last commit:

r470:5c708e3e7c7c
r474:93c2b5b16561
Show More
qscatterseries.cpp
206 lines | 4.6 KiB | text/x-c | CppLexer
#include "qscatterseries.h"
#include "qchart.h"
/*!
\class QScatterSeries
\brief QtCommercial Chart series API for showing scatter series.
\mainclass
Example on how to create a chart with scatter series:
\snippet ../example/scatter/main.cpp 1
The example code would result the following:
\image scatter_example1.jpg
To customize the graphical representation of the series, you can modify pen, brush, shape and
size of the marker items. For example:
\snippet ../example/scatter/main.cpp 3
Would present your scatter markers as big rectangles with opaque, uglyish green outlines and
opaque red filling instead of the beatiful markers defined by the chart's theme:
\image scatter_example_custom.jpg
*/
/*!
\enum QScatterSeries::MarkerShape
This enum describes the shape used when rendering marker items.
\value MarkerShapeDefault
\value MarkerShapeX
\value MarkerShapeRectangle
\value MarkerShapeRoundedRectangle
\value MarkerShapeTiltedRectangle
\value MarkerShapeTriangle
\value MarkerShapeCircle
*/
/*!
\fn QChartSeriesType QScatterSeries::type() const
\brief Returns QChartSeries::SeriesTypeScatter.
*/
/*!
\fn void QScatterSeries::clicked(QPointF coordinate)
User clicked the scatter series. Note that the \a coordinate is the chart coordinate that the
click occurred on; not necessarily a data point coordinate. To find the corresponding (closest)
data point you can use closestPoint().
*/
QTCOMMERCIALCHART_BEGIN_NAMESPACE
/*!
Constructs a series object which is a child of \a parent.
*/
QScatterSeries::QScatterSeries(QObject *parent) :
QXYSeries(parent),
m_shape(QScatterSeries::MarkerShapeDefault),
m_size(9.0)
{
}
/*!
Destroys the object. Note that adding series to QChart transfers the ownership to the chart.
*/
QScatterSeries::~QScatterSeries()
{
}
/*!
Stream operator for adding a data point with \a value to the series.
\sa add()
For example:
\snippet ../example/scatter/main.cpp 2
*/
/*!
Stream operator for adding a list of points to the series.
\sa add()
*/
/*!
Replaces the data of the series with the given list of data \a points.
*/
/*!
Returns the current list of data points of the series.
*/
/*!
Replaces the point at \a index with \a newPoint. Returns true if \a index is a valid position
in the series data, false otherwise.
*/
/*!
Remove the data point at \a index. Returns true if a point was removed, false if the point
at \a index does not exist on the series.
*/
/*!
Remove all occurrences of \a point from the series and returns the number of points removed.
*/
/*!
Remove all data points from the series.
*/
/*!
Returns the index of the data point that is closest to \a coordinate. If several data points
are at the same distance from the \a coordinate, returns the last one. If no points exist,
returns -1.
int QScatterSeries::closestPoint(QPointF coordinate)
{
qreal distance(-1);
int pointIndex(-1);
for (int i(0); i < d->m_data.count(); i++) {
QPointF dataPoint = d->m_data.at(i);
QPointF difference = dataPoint - coordinate;
if (i == 0 || difference.manhattanLength() <= distance) {
distance = difference.manhattanLength();
pointIndex = i;
}
}
return pointIndex;
}
*/
/*!
Returns the pen used for drawing markers.
*/
/*!
Overrides the default pen used for drawing a marker item with a user defined \a pen. The
default pen is defined by chart theme setting.
\sa setBrush()
\sa QChart::setChartTheme()
*/
/*!
Returns the brush used for drawing markers.
*/
/*!
Overrides the default brush of the marker items with a user defined \a brush. The default brush
is defined by chart theme setting.
\sa setPen()
\sa QChart::setChartTheme()
*/
/*!
Returns the shape used for drawing markers.
*/
QScatterSeries::MarkerShape QScatterSeries::shape() const
{
return (QScatterSeries::MarkerShape) m_shape;
}
/*!
Overrides the default shape of the marker items with a user defined \a shape. The default shape
is defined by chart theme setting.
*/
void QScatterSeries::setShape(MarkerShape shape)
{
m_shape = shape;
emit updated();
}
/*!
Returns the size of the marker items.
*/
qreal QScatterSeries::size() const
{
return m_size;
}
/*!
Set the \a size of the marker items. The default size is 9.0.
*/
void QScatterSeries::setSize(qreal size)
{
m_size = size;
emit updated();
}
#include "moc_qscatterseries.cpp"
QTCOMMERCIALCHART_END_NAMESPACE