这个小部件类,对于QCustomPlot的所有方面都有所体现

下面阅读它的函数:

函数组织顺序为: 基本设置---添加图线---删除图线---添加额外Item---层次管理---坐标轴管理----导出图表

QCustomPlot (QWidget *parent=0)

void     setViewport (const QRect &rect)//视口设置,通常就是本部件所在的长宽
void     setBackground (const QPixmap &pm)//在整个视口的最底层绘制图片,用作背景
void     setBackground (const QPixmap &pm, bool scaled, Qt::AspectRatioMode mode=Qt::KeepAspectRatioByExpanding)
void     setBackground (const QBrush &brush)
void     setBackgroundScaled (bool scaled)//设置setBackground 所绘的图是否进行缩放以适应Viewport
void     setBackgroundScaledMode (Qt::AspectRatioMode mode)//有Qt::IgnoreAspectRatio(忽略比例,缩放至适应视口),Qt::KeepAspectRatio(保持长宽比,直到一边最大至视口边缘)Qt::KeepAspectRatioByExpanding(保持长宽比,缩放至充满视口)
void     setAntialiasedElements (const QCP::AntialiasedElements &antialiasedElements)//抗锯齿效果,对于各对象,都有默认设置,可通过本函数,改变默认不抗锯齿的元素,使它也抗。
void     setAntialiasedElement (QCP::AntialiasedElement antialiasedElement, bool enabled=true)//更方便的开关
void     setNotAntialiasedElements (const QCP::AntialiasedElements ¬AntialiasedElements)//设置不抗
void     setNotAntialiasedElement (QCP::AntialiasedElement notAntialiasedElement, bool enabled=true)
void     setAutoAddPlottableToLegend (bool on)//是否自动添加图形到图例,默认是
void     setInteraction (const QCP::Interaction &interaction, bool enabled=true)//设置交互方式,如是否可拖动或缩放轴,是否可选中轴或图例等。
void     setInteractions (const QCP::Interactions &interactions)
void     setSelectionTolerance (int pixels)//选择公差设置,在多少像素中能选中某个元素
void     setNoAntialiasingOnDrag (bool enabled)//拖动时是否也抗锯齿
void     setPlottingHint (QCP::PlottingHint hint, bool enabled=true)//设置其它参数,如快速绘制线(损失质量),缓存轴的lable(提高效率)
void     setPlottingHints (const QCP::PlottingHints &hints)
void     setMultiSelectModifier (Qt::KeyboardModifier modifier)//要多选时的按键,默认Qt::ControlModifier,即ctrl

QRect     viewport () const//与上述大致对应
QPixmap     background () const
bool     backgroundScaled () const
Qt::AspectRatioMode     backgroundScaledMode () const
QCPLayoutGrid *     plotLayout () const
QCP::AntialiasedElements     antialiasedElements () const
QCP::AntialiasedElements     notAntialiasedElements () const
bool     autoAddPlottableToLegend () const
const QCP::Interactions     interactions () const
int     selectionTolerance () const
bool     noAntialiasingOnDrag () const
QCP::PlottingHints     plottingHints () const
Qt::KeyboardModifier     multiSelectModifier () const

QCPAbstractPlottable *     plottable (int index)//所有添加的图线都自动加了索引,按先后顺序
QCPAbstractPlottable *     plottable ()
bool     addPlottable (QCPAbstractPlottable *plottable)//添加除graph线外的其它种类型的曲线或图
bool     removePlottable (QCPAbstractPlottable *plottable)
bool     removePlottable (int index)
int     clearPlottables ()
int     plottableCount () const
QList< QCPAbstractPlottable * >     selectedPlottables () const//返回选中的线
QCPAbstractPlottable *     plottableAt (const QPointF &pos, bool onlySelectable=false) const//返回某个点是否有图线
bool     hasPlottable (QCPAbstractPlottable *plottable) const

QCPGraph *     addGraph (QCPAxis *keyAxis=0, QCPAxis *valueAxis=0)//为Graph线留的特殊接口,因Graph是最常用的
bool     removeGraph (QCPGraph *graph)
bool     removeGraph (int index)
QCPGraph *     graph (int index) const
QCPGraph *     graph () const
int     clearGraphs ()
int     graphCount () const
QList< QCPGraph * >     selectedGraphs () const

bool     addItem (QCPAbstractItem *item)//添加一些附加item,如箭头等
bool     removeItem (QCPAbstractItem *item)
bool     removeItem (int index)
int     clearItems ()
int     itemCount () const
QCPAbstractItem *     item (int index) const
QCPAbstractItem *     item () const
QList< QCPAbstractItem * >     selectedItems () const
QCPAbstractItem *     itemAt (const QPointF &pos, bool onlySelectable=false) const
bool     hasItem (QCPAbstractItem *item) const
QCPLayoutElement *     layoutElementAt (const QPointF &pos) const

QCPLayer *     layer (const QString &name) const//QCustomPlot分层的实现与管理
QCPLayer *     layer (int index) const
QCPLayer *     currentLayer () const
bool     setCurrentLayer (const QString &name)
bool     setCurrentLayer (QCPLayer *layer)
int     layerCount () const
bool     addLayer (const QString &name, QCPLayer *otherLayer=0, LayerInsertMode insertMode=limAbove)
bool     removeLayer (QCPLayer *layer)
bool     moveLayer (QCPLayer *layer, QCPLayer *otherLayer, LayerInsertMode insertMode=limAbove)

QCPAxisRect *     axisRect (int index=0) const
QList< QCPAxisRect * >     axisRects () const
QList< QCPAxis * >     selectedAxes () const
QList< QCPLegend * >     selectedLegends () const
int     axisRectCount () const

bool     savePdf (const QString &fileName, bool noCosmeticPen=false, int width=0, int height=0, const QString &pdfCreator="", const QString &pdfTitle="")//将图表导出成各种格式
bool     savePng (const QString &fileName, int width=0, int height=0, double scale=1.0, int quality=-1)
bool     saveJpg (const QString &fileName, int width=0, int height=0, double scale=1.0, int quality=-1)
bool     saveBmp (const QString &fileName, int width=0, int height=0, double scale=1.0)
bool     saveRastered (const QString &fileName, int width, int height, double scale, const char *format, int quality=-1)
QPixmap     toPixmap (int width=0, int height=0, double scale=1.0)
void     toPainter (QCPPainter *painter, int width=0, int height=0)

//三个槽
Q_SLOT void     replot (QCustomPlot::RefreshPriority refreshPriority=QCustomPlot::rpHint)//重新生成图表
Q_SLOT void     rescaleAxes (bool onlyVisiblePlottables=false)
Q_SLOT void     deselectAll ()//取消选择

Qt第三方库QCustomPlot——QCustomPlot解读的更多相关文章

  1. Qt第三方库----QCustomPlot

    一.软件下载 下载地址:http://www.qcustomplot.com/index.php/download 这里推荐下载第一个链接的内容: 注:这里的第三方库要放在非中文目录下. 二.配置 ( ...

  2. Qt第三方库libvlc-qt——ubuntu上编译、安装,测试

      cmake 3.0编译安装(最低版本要求): sudo apt-get install ncurses-dev sudo apt-get install build-essential 下载cma ...

  3. 基于QT开发的第三方库

    基于Qt开发的第三方库 分类: Qt2014-02-12 11:34 1738人阅读 评论(0) 收藏 举报 QT第三方库   目录(?)[+]   文章来源:http://blog.csdn.net ...

  4. 基于Qt的第三方库和控件

    ====================== 基于Qt的第三方库和控件 ======================     libQxt --------   http://dev.libqxt.o ...

  5. Qt编程可不可以结合其他的第三方库和本土API?(有zeroMQ的Qt封装,还可轻易使用Python的库)

    作者:渡世白玉链接:http://www.zhihu.com/question/29030777/answer/59378712来源:知乎著作权归作者所有,转载请联系作者获得授权. 可以,十分可以,你 ...

  6. Qt使用第三方库

    简述 在 Qt 中经常会用到第三方库,例如:FFmpeg.OpenCV 等.第三方库的使用比较简单,只需要一些基本的配置就可以搞定,一起来看看吧! 简述 第三方库 源代码 库文件 目标目录 第三方库 ...

  7. Qt使用第三方库3rdparty

    简述 在 Qt 中经常会用到第三方库,例如:FFmpeg.OpenCV 等.第三方库的使用比较简单,只需要一些基本的配置就可以搞定,一起来看看吧! 简述 第三方库 源代码 库文件 目标目录 第三方库 ...

  8. Qt笔记——连接第三方库&用libZPlay库获取音频文件的艺术家、专辑等信息

    连接第三方库libZPlay 概述 需要.a/.lib ,.h , .dll 三个文件 官网下载 http://libzplay.sourceforge.net/ import .h 链接 .a 放入 ...

  9. qt .pro文件和cmakelists.txt配置第三方库

    .pro文件引用第三方库文件和头文件路径 1.库文件(LIBS添加的是共享库文件,-L添加目录,-l指定共享库名称) LIBS += -L/usr/local/lib -lmath LIBS的使用就是 ...

随机推荐

  1. postgres之清理空间碎片

    postgres=# select * from pg_stat_user_tables where relname = 'test'; -[ RECORD 1 ]-------+---------- ...

  2. vue 之组件

    组件 '''1.根组件:new Vue()创建的组件,一般不明确自身的模板,模板就采用挂载点2.局部组件: local_component = {}2.全局组件: Vue.component({})' ...

  3. FZU 2150 Fire Game (高姿势bfs--两个起点)

    Description Fat brother and Maze are playing a kind of special (hentai) game on an N*M board (N rows ...

  4. SCP-bzoj-1085

    项目编号:bzoj-1085 项目等级:Safe 项目描述: 戳这里 特殊收容措施: A*(上下界剪枝). 答案上界:15. 答案下界:当前步数+当前状态剩余步数估价. 这里我们简单地设计估价函数为当 ...

  5. paper 147:Deep Learning -- Face Data Augmentation(一)

    1. 在深度学习中,当数据量不够大时候,常常采用下面4中方法:  (1)人工增加训练集的大小. 通过平移, 翻转, 加噪声等方法从已有数据中创造出一批"新"的数据.也就是Data ...

  6. paper 133:结构张量Structure Tensor(一)

    1.结构张量的作用:       能够区分图像中的平坦区域,边缘,角点: 2.图像中的结构张量的定义    1)是一个矩阵:    2)与图像的水平,垂直梯度有关,定义如下: 在MATLAB中,可以用 ...

  7. (转)MyEclipse中使用git

    转:https://www.jianshu.com/p/92ee5c99d3a8 Myeclipse老版本可能需要安装一个插件,高版本中已经安装好了. 连接github 当然我们之前已经有仓库了,我们 ...

  8. Myeclipse下使用Maven搭建spring boot2.0项目

    现在需要搭建spring boot框架,并实现一个HelloWorld的项目,让程序真正运行起来. 一.在pom.xml中引入spring-boot-start-parent,spring官方的叫st ...

  9. 将已有的lng lat 字段转换成point类型字段

    利用拼接字符串转换point select GeomFromText(CONCAT('POINT(',lng,' ',lat,')')) from community limit 1; 插入字段到新表 ...

  10. selenium自动化测试时,chrome 出现“Chrome 正受到自动测试软件的控制”的解决办法

    背景 使用selenium自动化测试的时候,启动浏览器出现'Chrome正在受到自动软件的控制'的问题,修改方法有两种. 一.在浏览器配置里加个参数,忽略掉这个警告提示语:disable_infoba ...