Qt第三库QCustomPlot—绘图三

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

下面阅读它的函数:

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

[.cpp]
   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 ()//取消选择  
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,755评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,369评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,799评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,910评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,096评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,159评论 3 411
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,917评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,360评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,673评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,814评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,509评论 4 334
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,156评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,882评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,123评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,641评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,728评论 2 351

推荐阅读更多精彩内容

  • 简述 图形视图(Graphics View)提供了一个平台,用于大量自定义2D图元的管理与交互,并提供了一个视图部...
    YBshone阅读 5,292评论 0 5
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,870评论 25 707
  • The Graphic View 提供了一个 Surface,用于管理和交互大量定制的 2D 图形化 Item;同...
    勤劳的悄悄阅读 6,035评论 1 3
  • 今晚突然想看看电影,不知道该看什么,就上了豆瓣看看评分比较高的影片推荐。 手指划过一部部高分电影,最后...
    逐梦拾光阅读 661评论 0 4
  • 从来没有像今天这般,觉得生活如此的残酷。 25岁的年纪,伸手拿出的竟然只是无尽的拘束,淘宝几十块的衣服是这个夏天最...
    愉心阅读 421评论 0 1