14 #include <Wt/WApplication> 16 #include <Wt/WEnvironment> 17 #include <Wt/WItemDelegate> 18 #include <Wt/WStandardItemModel> 21 #include <Wt/WBorderLayout> 22 #include <Wt/WFitLayout> 24 #include <Wt/WStandardItem> 25 #include <Wt/WTableView> 27 #include <Wt/Chart/WCartesianChart> 28 #include <Wt/Chart/WPieChart> 40 virtual NumericItem *clone()
const {
41 return new NumericItem();
44 virtual void setData(
const boost::any &data,
int role =
UserRole) {
50 double d = strtod(s.c_str(), &endptr);
69 std::ifstream f(fname.c_str());
74 for (
int row = 0; row < model->
rowCount(); ++row)
75 for (
int col = 0; col < model->
columnCount(); ++col) {
93 error.arg(fname, UTF8);
94 new WText(error, parent);
103 new WText(WString::tr(
"introduction"),
this);
114 new WText(WString::tr(
"category chart"),
this);
117 = readCsvFile(WApplication::appRoot() +
"category.csv",
this);
140 if (WApplication::instance()->environment().ajax()) {
141 table->
resize(600, 20 + 5*22);
144 table->
resize(600, WLength::Auto);
196 new WText(WString::tr(
"scatter plot"),
this);
199 WApplication::appRoot() +
"timeseries.csv",
this);
207 for (
int i = 0; i < model->
rowCount(); ++i) {
209 WDate d = WDate::fromString(s,
"dd/MM/yy");
231 if (WApplication::instance()->environment().ajax()) {
232 table->
resize(800, 20 + 5*22);
235 table->
resize(800, 20 + 5*22 + 25);
270 for (
int i = 1; i < 3; ++i) {
287 new WText(WString::tr(
"scatter plot 2"),
this);
294 for (
unsigned i = 0; i < 40; ++i) {
295 double x = (
static_cast<double>(i) - 20) / 4;
341 new WText(WString::tr(
"pie chart"),
this);
375 for (
int row = 0; row < model->
rowCount(); ++row)
376 for (
int col = 0; col < model->
columnCount(); ++col)
389 if (WApplication::instance()->environment().ajax()) {
390 table->
resize(150 + 100 + 14, 20 + 6 * 22);
393 table->
resize(150 + 100 + 14, WLength::Auto);
void setExplode(int modelRow, double factor)
A Widget that demonstrates a scatter plot.
void setTextFormat(const WString &format)
ChartsExample(Wt::WContainerWidget *root)
Constructor.
virtual bool insertColumns(int column, int count, const WModelIndex &parent=WModelIndex())
void setPanEnabled(bool pan=true)
WString asString(const boost::any &v, const WString &formatString=WString())
void setLabelsColumn(int column)
virtual void setColumnWidth(int column, const WLength &width)
A Widget that demonstrates a Pie chart.
void setLocation(AxisValue value)
void addSeries(const WDataSeries &series)
virtual bool insertRows(int row, int count, const WModelIndex &parent=WModelIndex())
void setDisplayLabels(WFlags< LabelOption > options)
void setShadow(const WShadow &shadow)
void setItemDelegate(WAbstractItemDelegate *delegate)
virtual boost::any data(const WModelIndex &index, int role=DisplayRole) const =0
void setType(ChartType type)
void setSelectionMode(SelectionMode mode)
CategoryExample(Wt::WContainerWidget *parent)
Creates the category chart example.
virtual int rowCount(const WModelIndex &parent=WModelIndex()) const =0
void setPerspectiveEnabled(bool enabled, double height=1.0)
virtual void resize(const WLength &width, const WLength &height)
void setCrosshairEnabled(bool crosshair=true)
void setItemPrototype(WStandardItem *item)
std::string toUTF8() const
void setZoomEnabled(bool zoom=true)
A Widget that demonstrates a category chart.
A widget that demonstrates a times series chart.
void setBackground(const WBrush &background)
void setModel(WAbstractItemModel *model)
void setScale(AxisScale scale)
static WString tr(const char *key)
void setXSeriesColumn(int modelColumn)
TimeSeriesExample(Wt::WContainerWidget *parent)
Creates the time series scatter plot example.
void setValueFill(Wt::Chart::FillRangeType fill)
virtual int columnCount(const WModelIndex &parent=WModelIndex()) const =0
void setEditTriggers(WFlags< EditTrigger > editTriggers)
void setShadowEnabled(bool enabled)
void setColumnResizeEnabled(bool enabled)
void setAutoLayoutEnabled(bool enabled=true)
virtual void setData(const boost::any &data, int role=UserRole)
virtual void setAlternatingRowColors(bool enable)
virtual bool setHeaderData(int section, Orientation orientation, const boost::any &value, int role=EditRole)
void setDataColumn(int modelColumn)
virtual void setHeaderAlignment(int column, WFlags< AlignmentFlag > alignment)
virtual void setRowHeight(const WLength &rowHeight)
void setLegendEnabled(bool enabled)
void setSortingEnabled(bool enabled)
void setItemDelegateForColumn(int column, WAbstractItemDelegate *delegate)
void setFlags(WFlags< ItemFlag > flags)
PieExample(Wt::WContainerWidget *parent)
Creates the pie chart example.
A class that allows configuration of a cartesian chart.
void readFromCsv(std::istream &f, Wt::WAbstractItemModel *model, int numRows, bool firstLineIsHeaders)
Utility function that reads a model from a CSV file.
virtual bool setData(const WModelIndex &index, const boost::any &value, int role=EditRole)
virtual void setModel(WAbstractItemModel *model)
WStandardItem * item(int row, int column=0) const
ScatterPlotExample(Wt::WContainerWidget *parent)
Creates the scatter plot example.
virtual void setColumnAlignment(int column, AlignmentFlag alignment)