如何在matlab中更改标记并在点之间绘制一条线

时间:2017-04-02 14:31:00

标签: matlab matlab-figure

我有这个代码,我试图绘制:

battery_aH=55;
hour_of_battery_work=12;
one_battery_price=147.96;
system_amper=1;
while system_amper<20
    discharge_battery=1;
    [num_of_battery]=num_of_battery1(system_amper,hour_of_battery_work,battery_aH,discharge_battery);
    [total_price]=total_price1(one_battery_price,num_of_battery);
    plot(total_price,system_amper,'markersize', 30,)
    system_amper=system_amper+1;
end
xlabel('price(€)','fontname','times','fontsize',16);
ylabel('Energy of the system[aH]','fontname','times','fontsize',16);

hold off

问题在于,当我运行此代码时,我会得到小点。 我可以通过代码更改标记的类型(不是大小)吗?我可以通过代码在这些点之间画一条线,然后使点消失吗?

2 个答案:

答案 0 :(得分:1)

您可以将line properties指定为plot的参数/值参数。在您的情况下,您应该能够指定MarkerMarkerSizeLineStyle属性

plot(total_price, system_amper, 'Marker', '*', 'MarkerSize', 30, 'LineStyle', '-')

或者,您可以将图形句柄存储到line生成的plot对象中,并使用set修改属性

h = plot(total_price, system_amper);
set(h, 'Marker', '*', 'MarkerSize', 30, 'LineStyle', '-')

答案 1 :(得分:0)

您正在&#39;中逐个绘制积分。环。这就是他们没有联系在一起的原因。

您要做的是将所有点存储在数组中,然后一次性绘制它们。然后,您可以使用plot options更改行和标记规范。