plotyy: changing the line-style to 'o--'

27 visualizzazioni (ultimi 30 giorni)
Abhinav
Abhinav il 31 Mag 2018
Commentato: Abhinav il 1 Giu 2018
I have three line-plots on left y-axis and a bar plot on the right y-axis. how do I change line-style to 'o--' for every line on left y-axis. I am using following code, but it shows an error of 'Bad property value found'.
[Ax,hl1,hl2]=plotyy(time_step,surfaceflow1,prcp_datenum,prcp_excess,'line','bar');
set(hl1,'linestyle','--','linewidth',3) % gives error if I use 'o--' instead of '--'
hold(Ax(1))
plot(Ax(1),time_step,surfaceflow28,'o--','color','r','linewidth',3)
plot(Ax(1),time_step,surfaceflow59,'o--','color',[0,0.5,0],'linewidth',3)
datetick(Ax(1),'x','mmmm dd')
datetick(Ax(2),'x','mmmm dd HH:MM')
I have attached the figure that I get with this code and other formattings. I am not able to figure out a way to change the line style of blue-curve to 'o--' as in other cases.
  2 Commenti
Stephen23
Stephen23 il 1 Giu 2018
Modificato: Stephen23 il 1 Giu 2018
@Abhinav: what you call line style is actually called the LineSpec or Line Specification. The LineSpec is a shorthand which lets you specify the color, line style, and marker shape. It can only be used when calling some high-level plotting functions (e.g. plot). You can read more about it here:
The Line Style only defines the line itself: it can be solid, dashed, dotted, or dot-dash (specified by '-', '--', ':', '-.' respectively). You will find the permitted LineStyles listed in the line properties, along with all of the permitted Markers. If you want to set the Marker then you need to set the Marker property, not the LineStyle property.
Abhinav
Abhinav il 1 Giu 2018
Thank you, Stephen! It worked.

Accedi per commentare.

Risposta accettata

Greg
Greg il 1 Giu 2018
'o--' and others are shortcut inputs to plot commands when you don't pass a parameter. In this case, you are specifying a marker and a line style. When you pass the 'LineStyle' parameter, you can't include a marker identifier (the 'o'). Try:
set(hl1,'linestyle','--','marker','o','linewidth',3);

Più risposte (0)

Categorie

Scopri di più su Two y-axis in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by