精华内容
下载资源
问答
  • matlab画图双坐标轴多坐标轴代码

    千次阅读 2021-04-17 13:59:33
    matlab的绘图模块相比于其他软件要好看很,可以使用句柄画出很漂亮的图,下面介绍plot画单坐标轴图和双坐标轴图,另附上多坐标轴图的代码下载 一、单坐标轴图 直接使用plot(x,y)即可,x为横坐标的矩阵,y为纵...

            matlab的绘图模块相比于其他软件要好看很多,可以使用句柄画出很漂亮的图,下面介绍plot画单坐标轴图和双坐标轴图,另附上多坐标轴图的代码下载

    一、单坐标轴图

         直接使用plot(x,y)即可,x为横坐标的矩阵,y为纵坐标的矩阵,具体用法参见https://blog.csdn.net/sinat_21026543/article/details/80215281,写的特别详细,建议大家去看看

    二、双坐标轴图

    在matlab中双坐标轴图的画法通常使用plotyy函数,具体用法:

    1.plotyy(X1,Y1,X2,Y2):以左、右不同纵轴绘制X1-Y1、X2-Y2两条曲线。
    2.plotyy(X1,Y1,X2,Y2,FUN1):以左、右不同纵轴把X1-Y1、X2-Y2两条曲线绘制成FUN1指定形式的两条曲线。
    3.plotyy(X1,Y1,X2,Y2,FUN1,FUN2):以左、右不同纵轴把X1-Y1、X2-Y2两条曲线绘制成FUN1、FUN2指定的不同形式的两条曲线。
    4.[AX,H1,H2]=plotyy(...):返回AX中创建的两个坐标轴的句柄以及H1和H2中每个图形绘图对象的句柄。AX(1)为左侧轴, AX(2)为右侧轴。
    如果是直接使用plotyy效果不是很理想,因此一般都是用最后一个,其中使用方法为:

    [AX,H1,H2]=plotyy(t1,a1,t2,a2,'plot');

    (1)设置双y轴的刻度

    设置横坐标为0:10:100,也就是0-100,间隔取10,左右轴坐标分别为0-500和0-10000

    set(AX(1),'XTick',[0:10:100],'yTick',[0:50:500])  %设置左边Y轴的刻度
    set(AX(2),'XTick',[0:10:100],'yTick',[0:50:1000])  %设置右边Y轴的刻度

    (2)添加标注

    添加横纵坐标轴的名称,横坐标为x,纵坐标分别为a1、a2

    HH1=get(AX(1),'Ylabel');
    set(HH1,'String','a1')
    HH2=get(AX(2),'Ylabel');
    set(HH2,'String','a2')

    或者如下,效果是一样的

    set(get(AX(1),'Ylabel'),'String','a1')
    set(get(AX(2),'Ylabel'),'String','a2')

    (3)调整图像线形和粗细

    左轴的为实线,粗细为2,颜色为红色;右轴的为虚线,粗细为2,颜色为绿色

    set(H1(1),'LineStyle','-','LineWidth',2,'color','r')
    set(H2(1),'LineStyle',':','LineWidth',2,'color','g')

    (4)具体实例如下:

    对应的代码

    clc
    clear
    close all
    t1=(0:10:100);t2=t1;t3=t1;t4=t1;
    a1=rand(1,11)*200;
    a2=rand(1,11)*2000;
    a3=rand(1,11)*100000;
    a4=rand(1,11)*0.0001;
    figure(5)
    hold on
    [AX,H1,H2]=plotyy(t1,a1,t2,a2,'plot');
    set(AX(1),'XColor','k','YColor','k')
    set(AX(2),'XColor','k','YColor','k')
    HH1=get(AX(1),'Ylabel');
    set(HH1,'String','a1')
    HH2=get(AX(2),'Ylabel');
    set(HH2,'String','a2')
    set(AX(1),'xlim',[0,100],'xtick',[0,200,400,600,800,1000])
    set(AX(1),'ylim',[0,200],'ytick',[0,40,80,120,160,200])
    set(AX(2),'xlim',[0,100],'xtick',[0,200,400,600,800,1000])
    set(AX(2),'ylim',[0,2000],'ytick',[0,400,800,1200,1600,2000])
    set(H1(1),'LineStyle','-','LineWidth',2,'color','r')
    set(H2(1),'LineStyle',':','LineWidth',2,'color','g')
    set(gca,'Position',[0.2 0.2 0.55 0.6])
    hold on
    legend boxoff
    lgd1=legend([H1(1),H2(1)],'a1','a2','orientation','horizontal','location','north');
    ah=axes('position',get(gca,'position'),'visible','off');
    
    

    三、多坐标轴图

    有的时候需要画多个坐标轴,这时候就需要根据自己的需求进行调节,具体实例效果如下:

    代码https://download.csdn.net/download/weixin_41971010/16728944

    展开全文
  • QCHART多坐标轴使用示例

    千次阅读 2020-05-12 13:36:19
    QCHART多坐标轴和时间轴使用示例代码

    QCHART多坐标轴和时间轴使用示例

     

    多个Y坐标轴示例代码

     

        QChart *chart = new QChart();

        chart->legend()->hide();

        chart->setTitle("Multiaxis chart example");

     

        QValueAxis *axisX = new QValueAxis;

        axisX->setTickCount(10);

        chart->addAxis(axisX, Qt::AlignBottom);

     

     

     

        QSplineSeries *series = new QSplineSeries;

        *series << QPointF(1, 5) << QPointF(3.5, 18) << QPointF(4.8, 7.5) << QPointF(10, 2.5);

        chart->addSeries(series);

     

        QValueAxis *axisY = new QValueAxis;

        axisY->setLinePenColor(series->pen().color());

     

        chart->addAxis(axisY, Qt::AlignLeft);

        series->attachAxis(axisX);

        series->attachAxis(axisY);

     

     

     

        series = new QSplineSeries;

        *series << QPointF(1, 0.5) << QPointF(1.5, 4.5) << QPointF(2.4, 2.5) << QPointF(4.3, 12.5)

                << QPointF(5.2, 3.5) << QPointF(7.4, 16.5) << QPointF(8.3, 7.5) << QPointF(10, 17);

        chart->addSeries(series);

     

        QCategoryAxis *axisY3 = new QCategoryAxis;

        axisY3->append("Low", 5);

        axisY3->append("Medium", 12);

        axisY3->append("High", 17);

        axisY3->setLinePenColor(series->pen().color());

        axisY3->setGridLinePen((series->pen()));

     

        chart->addAxis(axisY3, Qt::AlignRight);

        series->attachAxis(axisX);

        series->attachAxis(axisY3);

     

     

        QChartView *chartView = new QChartView(chart);

        chartView->setRenderHint(QPainter::Antialiasing);

     

    时间轴QDateTimeAxis 使用示例

    QChart *chart = new QChart();

        chart->addSeries(series);

        chart->legend()->hide();

        chart->setTitle("Sunspots count (by Space Weather Prediction Center)");

     

        QDateTimeAxis *axisX = new QDateTimeAxis;

        axisX->setTickCount(10);

        axisX->setFormat("MMM yyyy");

        axisX->setTitleText("Date");

        chart->addAxis(axisX, Qt::AlignBottom);

        series->attachAxis(axisX);

     

        QValueAxis *axisY = new QValueAxis;

        axisY->setLabelFormat("%i");

        axisY->setTitleText("Sunspots count");

        chart->addAxis(axisY, Qt::AlignLeft);

        series->attachAxis(axisY);

     

        QChartView *chartView = new QChartView(chart);

        chartView->setRenderHint(QPainter::Antialiasing);

     

    QT中SMAPLE代码,作为备忘。

    展开全文
  • <div id="chart"></div>
  • C#绘制坐标轴绘制坐标轴绘制坐标轴绘制坐标轴C#C#绘制坐标轴绘制坐标轴绘制坐标轴绘制坐标轴C#绘制坐标轴绘制坐标轴绘制坐标轴绘制坐标轴C#绘制坐标轴绘制坐标轴绘制坐标轴绘制坐标轴
  • R语言作图:坐标轴设置

    万次阅读 多人点赞 2018-02-04 20:51:24
    要绘制一张赏心悦目的统计图表,坐标轴的设置至关重要。在R语言底层作图中,对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。 plot(x,y, ...) axis(side,at = NULL, labels = TRUE, ...

      要绘制一张赏心悦目的统计图表,坐标轴的设置至关重要。在R语言底层作图中,对坐标轴的调整主要通过调整plot函数、axis函数和title函数的一系列参数完成。

    plot(x,y, ...)

    axis(side,at = NULL, labels = TRUE, tick = TRUE, line = NA,

         pos= NA, outer = FALSE, font = NA, lty = "solid",

         lwd = 1, lwd.ticks = lwd, col = NULL,col.ticks = NULL,

         hadj = NA, padj = NA, ...)

    title(main= NULL, sub = NULL, xlab = NULL, ylab = NULL,

          line = NA, outer = FALSE, ...)

    一、plot函数的准备

      在个性化设置坐标轴之前中,通常需调整plot函数中的ann、bty、xaxt、yaxt、xaxs和yaxs参数:

      ann取FALSE时将不会画出标题(包括主、副标题及坐标轴标题);

      bty用来设置边框形式,默认值为"o",表示四面边框都画出,其余可选值包括"l"(左下)、"7"(上右)、"c"(上下左)、"u"(左下右)、"]" (上下右)和"n"(无,即不画边框),在很多个性化绘图中,bty设为"n",后期的边框线再使用其他函数(如axis)自行添加;

      xaxs和yaxs 用来设置x轴和y轴的范围,默认值取“r”,表示坐标轴比给定作图范围(参数xlim和ylim给出的范围)稍微大一点儿,取”i”时表示坐标轴范围与给定作图范围完全相同,另外还可取”s”、”e”、”d”;

      xaxt和yaxt 取”n”时,坐标轴、刻度线以及刻度值将不会画出。

     

    x <- seq(-4, 4, 0.01)
    y <- x^2
    par(mfrow = c(2, 2), mar = c(4, 4, 1, 1))
    plot(x, y)   # 未作处理
    plot(x, y,  xaxs = "i", yaxs ="i")   # 绘图边框未留白
    plot(x, y, bty = 'l')   # 只保留左和下两条边框
    plot(x, y, ann = F, bty = "n", xaxt = "n", yaxt ="n")   # 边框、坐标轴都去掉

     

    二、axis函数的用法

    1、基本操作

      side表示要操作的坐标轴,取值1、2、3、4分别代表下、左、上、右;

      at表示刻度线及刻度值所在位置;

      labels表示刻度值;

      las表示坐标刻度值文字方向,las=0表示文字方向与坐标轴平行,1表示始终为水平方向,2表示与坐标轴垂直,3表示终为垂直方向。

     

    x<- seq(-4, 4, 0.01)
    y<- x^2
    par(mfrow=c(1, 2), mar = c(4, 4, 1, 1))
    #未设置文字方向
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4)
    axis(2,seq(0, 16, 4), seq(0, 16, 4))
    #文字方向水平
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4, las = 1)
    axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1)

     

    2、字体字号

      cex.axis表示坐标轴刻度值的字号大小,

      font.axis表示坐标轴刻度值的字体,font=1表示正体,2表示黑体,3表示斜体,4表示黑斜体。

     

    x<- seq(-4, 4, 0.01)
    y<- x^2
    par(mfrow=c(2, 2), mar = c(4, 4, 1, 1))
    #未设置字体字号
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4)
    #cex.axis = 2
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, cex.axis = 2)
    #font.axis = 2
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, font.axis = 2)
    #font.axis = 3
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, font.axis = 3)
    
    


     

     

     

     

    3、颜色

      col表示图的颜色,用在axis函数中表示坐标轴线和坐标刻度线的颜色;

      col.axis表示坐标轴刻度值的颜色;

      col.ticks表示坐标轴刻度线的颜色。

     

    x<- seq(-4, 4, 0.01)
    y<- x^2
    par(mfrow=c(2, 2), mar = c(4, 4, 1, 1))
    #未设置颜色
    plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4)
    #col = 2
    plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, col = 2)
    #col.axis = 2
    plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, col.axis = 2)
    #col.ticks = 2
    plot(x,y, ann = F, bty = "n", xaxt = "n", yaxt = "n")
    axis(1,-4:4, -4:4, col.ticks = 2)

     

    4、位置

      line表示坐标轴线位置与图像边框的距离,取负数时会画在图像边框以内;

      mgp默认值为c(3, 1, 0),三个数字分别代表坐标轴标题、刻度值和轴线与绘图边框的距离;

      tcl默认值为-0.5,数值表示刻度线长度,负值表示刻度线朝外,正值朝里;

      pos 表示轴线所在的位置;

      line.outer取TRUE时,坐标轴将画在画布边缘处;

      hadj指将刻度值沿平行坐标轴方向调整的距离;

      padj指将刻度值沿垂直坐标轴方向调整的距离。

     

    x <- seq(-4, 4, 0.01)
    y <- x^2
    par(mfrow= c(2, 2), mar = c(4, 4, 1, 1))
    # 未设置刻度值位置
    plot(x, y, ann = F, xaxt = "n", yaxt ="n")
    axis(1, -4:4, -4:4)
    # 使用line调整刻度值位置
    plot(x, y, ann = F, xaxt = "n", yaxt ="n")
    axis(1, -4:4, -4:4, line = 2)
    # 使用mgp调整刻度值位置
    plot(x, y, ann = F, xaxt = "n", yaxt ="n")
    axis(1, -4:4, -4:4, mgp = c(3, 2, 0)) 
    # 使用padj调整刻度值位置
    plot(x, y, ann = F, xaxt = "n", yaxt ="n")
    axis(1, -4:4, -4:4, padj = 1)

     

     

     

    5、其他

      tick取FALSE时,坐标轴线和刻度线不画出;

      lty表示线型,用在axis函数中表示坐标轴线型;

      lwd表示线的粗细,用在axis函数中表示坐标轴线粗细;

      lwd.ticks表示刻度线粗细。

     

    三、title函数的用法

      main、sub、xlab和ylab分别表示主标题、副标题、x轴标题和y轴标题;

      cex.lab表示坐标轴标题的字号大小;

      font.lab表示坐标轴标题的字体;

      col.lab表示坐标轴标题的颜色;

      其余参数和axis中用法一致。

     

    x<- seq(-4, 4, 0.01)
    y<- x^2
    par(mfrow=c(2, 2), mar = c(4, 4, 1, 1))
    #无标题
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4)
    axis(2,seq(0, 16, 4), seq(0, 16, 4))
    #使用title设置标题
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4, las = 1)
    axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1)
    title(xlab= 'x', ylab = 'y')
    #使用line调整位置
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4, las = 1)
    axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1)
    title(xlab= 'x', ylab = 'y', line = 2)
    #调整颜色字体字号
    plot(x,y, ann = F, xaxt = "n", yaxt = "n")  
    axis(1,-4:4, -4:4, las = 1)
    axis(2,seq(0, 16, 4), seq(0, 16, 4), las = 1)
    title(xlab= 'x', ylab = 'y', col.lab = 2, font.lab = 4, cex.lab = 2)


    四、刻度间隔

      plot函数会自动给出比较合理的刻度间隔,本质上是调用了pretty函数。

      pretty(x, n = 5, min.n = n %/% 3,  shrink.sml = 0.75,
             high.u.bias = 1.5, u5.bias = .5 + 1.5*high.u.bias,
             eps.correct = 0, ...)

      x是一个序列,pretty函数会先对x取一个range,然后等分为大约n+1个间隔。如果在作图时对系统自动给出的间隔不满意,可以调整n的值,用pretty函数自定义合适的间隔。

     

     

     

    展开全文
  • matlab设定坐标轴范围和坐标轴显示

    万次阅读 多人点赞 2018-12-03 11:22:33
    设定坐标轴范围: 最简单的办法 axis([xmin,xmax,ymin,ymax]); 分坐标轴设定:  xlim([xmin,xmax]);%对X轴设定显示范围  ylim([ymin,ymax]);%对Y轴设定显示范围  zlim([zmin,zmax]);%对Z轴设定显示范围  ...

    设定坐标轴范围:

    最简单的办法

    axis([xmin,xmax,ymin,ymax]);

    分坐标轴设定: 
    xlim([xmin,xmax]);%对X轴设定显示范围 
    ylim([ymin,ymax]);%对Y轴设定显示范围 
    zlim([zmin,zmax]);%对Z轴设定显示范围  

    设定坐标轴显示:

    最简单的办法:

    set(gca,'YTick',[0:0.1:1]);%设置Y轴要显示坐标刻度

    设定坐标轴范围和坐标轴显示内容:

    set(gca,'ylim',[0,1],'ytick',[0:0.1:1]);%y坐标轴范围
    set(gca,'xlim',[0,14],'xtick',[0:1:14]);%x坐标轴范围

    结果:

    注意:提醒错误时,请先运行一句clear gca,再运行set命令

     
    展开全文
  • Cesium 自定义箭头坐标轴坐标轴(一)

    千次阅读 热门讨论 2020-12-15 15:33:36
    Cesium 自定义箭头坐标轴坐标轴箭头坐标轴和圆坐标轴 为了实现Cesium 对模型的拖拽平移和旋转,需要以模型为中心建立箭头坐标轴(沿坐标轴方向移动)和圆坐标轴(沿坐标轴方向旋转),简述二者的实现过程。
  • axis()函数是一个坐标轴配置的方便接口。 axis()的函数签名为matplotlib.pyplot.axis(*args, emit=True, **kwargs)。 axis()的调用签名为: xmin, xmax, ymin, ymax = axis() xmin, xmax, ymin, ymax = axis([xmin,...
  • // 坐标轴指示器,坐标轴触发有效 type : 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, legend: { data: [ '交警' , '武警' , '协警' ], textStyle: { color: '#fff' //legend字体...
  • 坐标轴也被称为第二坐标轴或副坐标轴,用于在一个图形中显示两个不同坐标尺度的图表。 twinx函数 twinx函数的功能为创建并返回一个共享x轴的子图。 twinx函数的签名为matplotlib.pyplot.twinx(ax=None)。参数ax的...
  • Python画图-主次坐标轴和翻转坐标轴

    万次阅读 2019-01-22 11:18:04
    主次坐标轴2. 翻转坐标轴   很时候我们在进可视化的时候希望把两个不同量纲的数据绘在一张图中。比如我们希望在一张图中画出历年房子的成交量和价格变化趋势图,或者是降雨与水位的变化趋势图等。这些量纲不...
  • 设置x和y为想要的显示范围,可以使用set函数。以x的显示范围为0到10,y的显示范围为90到101为例:%设置x范围和刻度:set(gca,'XLim',[0 10]);%X的数据显示范围;set(gca,'XTick',[0:1:10]);%设置要...
  • plt.xticks([]) # 去x坐标刻度 plt.yticks([]) # 去y坐标刻度 plt.axis('off') # 去坐标轴 **注意:**这三行代码要放到plt.show() 之前,plt.imshow() 之后
  • MATLAB设置坐标轴坐标

    万次阅读 2019-10-18 20:25:45
    问题:设置坐标轴的任意坐标 比如x轴的范围是从0到500,想设置成47、98、321。此处数字任意,想设置成什么就设置成什么。 解决 编辑——坐标轴属性 右下角更属性 属性栏中下拉选择XTick 追加、删除自己想要的...
  • 但是我们的心中想要达到的目标图为下图,那么就需要对坐标轴进行设置。 解决方案 这里要介绍matplotlib绘图辅助工具包mpl_toolkits,里面包含了一系列对于坐标轴设置的方法。 首先导入辅助工具包里面的轴系设置包 ...
  • // 坐标轴指示器,坐标轴触发有效 type : 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, legend: { data: [ '交警' , '武警' , '协警' ], textStyle: { color: '#fff' //legend字体...
  • echarts 柱状图隐藏x、y轴的内容,隐藏x,y轴坐标轴、刻度线、隐藏x、y轴坐标轴的数值 1.隐藏x轴坐标轴,在xAxis下使用axisLine属性为false,相反显示则是true axisLine:{ //x轴坐标轴,false为隐藏,true为显示 ...
  • matplotlib设置坐标轴

    万次阅读 多人点赞 2017-05-04 15:59:30
    在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等 在matplotlib中包含了很函数,用来对这些参数进行设置。plt.xlim、plt.ylim 设置...
  • echart中 yAxis(y坐标轴) & xAxis (x坐标轴) 的某些属性含义: 在坐标轴中, axisTick://坐标轴刻度相关设置。 axisLine://坐标轴轴线相关设置。 axisLabel://坐标轴刻度标签的相关设置。 splitLine:...
  • Matlab2016B版本提供了一个plotyy函数,可以提供左右两个纵坐标轴,如果需要三个纵坐标轴甚至个,怎么做,这里提供一种简单的技巧,效果如下: 这种方式可以修改任何一条线的属性和坐标轴属性,极为方便。 ...
  • ggplot2学习笔记-修改坐标轴刻度

    万次阅读 多人点赞 2018-07-22 14:27:37
    1.修改坐标轴显示范围 scale_x_continous(limits=c("A","B")#显示范围为A-B 或者ylim(A,B) 2.修改坐标轴显示刻度 scale_x_continous(limits=c("A","B"), breaks=seq...
  • // 坐标指示器颜色 tooltip : { trigger: 'axis', axisPointer: { lineStyle:{ color: 'blue' } } }, // X xAxis: [ { ...
  • matlab坐标轴加粗

    万次阅读 2019-04-02 08:51:58
    @matlab坐标轴加粗 #在用matlab画图时,有的figure坐标轴太细,导致整体不美观,与文字差异较大,因此可以适当对figure中坐标轴和曲线进行加粗美观,图中曲线加粗较容易,在figure中点击黄色区域即可进入编辑界面,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 267,760
精华内容 107,104
关键字:

多坐标轴