qq_47361278 2024-03-02 02:01 采纳率: 62.4%
浏览 14
已结题

MATLAB图像问题

我用如下代码画了一个图,代码如下:energy=0;ratio=zeros(1099,1); for i=1:1099 energy=energy + eValue(i); ratio(i)=energy*100/tenergy; end figure; plot(1:1099,ratio);
然后画出来的图如下:

img


但是我想把图片中线的样式改成跟下面这个图片一样

img


就是把我画的图的样式改成跟上图这样一个一个绿色的点或者一个个加号然后最后变成一条线,我应该怎么改代码或者怎么改设置?

  • 写回答

13条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-02 02:01
    关注

    引自免费微信小程序:皆我百晓生

    在MATLAB中,要将线样式修改为一系列绿色的点或者加号连接起来,你可以使用plot函数中的标记符(marker)选项来指定点的样式,并通过LineSpec参数来设置线条和标记的颜色。这里是一个例子,假设你希望用绿色的加号作为标记:

    % 假设你的原始代码不变
    energy = 0;
    ratio = zeros(1099,1);
    for i = 1:1099
        energy = energy + eValue(i);
        ratio(i) = energy * 100 / tenergy;
    end
    
    % 设置新的图形窗口并绘制带标记的线条
    figure;
    hold on; % 保持当前图形,以便在同一图上绘制多个元素
    plot(1:1099, ratio, 'g+', 'MarkerSize', 8, 'LineWidth', 1); 
    hold off; % 结束保持模式
    
    % 设置坐标轴标签和其他属性(如果需要)
    xlabel('Index');
    ylabel('Ratio');
    title('Energy Ratio Over Time');
    grid on; % 显示网格
    
    % 可选:调整x轴刻度以显示每个整数点
    xticks(1:1099);
    

    在这段代码中,'g+' 表示线条颜色为绿色(green),标记样式为加号。MarkerSize 控制标记大小,你可以根据需要调整这个值。同时,我启用了 hold on 来确保在一个图中绘制多条线或标记,最后关闭了 hold 模式。

    请注意,你需要根据实际变量名替换 eValuetenergy。这段代码将会生成一个带有绿色加号标记并连线的图像。

    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月2日
  • 创建了问题 3月2日

悬赏问题

  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?