c# - How to set ColumnBar series to a chart -


i want project column given width (e.i. 16-05-03 12:00:00 16-07-26 12:00:00) , projects along x axis (e.i labels bool, int, long, bool, int long) (see picture below).

enter image description here

for have 2 chart areas both having same parameters.

private void addchartareas(string name) {         // axisx         chart1.chartareas.add(name);         chart1.chartareas[name].axisx.majorgrid.enabled = false;         chart1.chartareas[name].axisx.interval = 1;          // axisy         chart1.chartareas[name].axisy.scrollbar.enabled = true;         chart1.chartareas[name].axisy.scaleview.zoomable = true;         chart1.chartareas[name].axisy.majorgrid.enabled = false;         chart1.chartareas[name].axisy.labelstyle.format = "yyyy-mm-dd hh:mm:ss";          chart1.chartareas[name].axisy.interval = 0;         chart1.chartareas[name].axisy.intervaltype = datetimeintervaltype.years;         mindate = new datetime(2016, 01, 01, 00, 00, 00, 000);         maxdate = new datetime(2016, 12, 01, 00, 00, 00, 000); // or datetime.now;         chart1.chartareas[name].axisy.minimum = mindate.tooadate();         chart1.chartareas[name].axisy.maximum = maxdate.tooadate();         chart1.chartareas[name].axisy.labelstyle.isendlabelvisible = true;         chart1.chartareas[name].axisy.islabelautofit = true;         chart1.chartareas[name].axisy.labelstyle.forecolor = color.yellow;          chart1.chartareas[name].axes[0].enabled = axisenabled.false;         chart1.chartareas[name].axes[1].enabled = axisenabled.false;          chart1.chartareas[name].backcolor = color.transparent;         chart1.chartareas[name].position.height = 100;         chart1.chartareas[name].position.width = 100;         chart1.chartareas[name].innerplotposition.height = 90;         chart1.chartareas[name].innerplotposition.width = 80;         chart1.chartareas[name].innerplotposition.x = 10; } 

the first chart area (bar series) created following:

var series = new series {               name = "s1",               color = color.lightslategray,               charttype = seriescharttype.bar };  chart1.series.add(series); 

the second chart area (range column series):

var series = new series {                   name = "s2",                   color = color.lightslategray,                   charttype = seriescharttype.rangecolumn };  chart1.series.add(series); 

to add points bar series bind 2 lists x, y:

        var lables = new string[6];         var values = new datetime[6];          mindate = new datetime(2016, 01, 01, 00, 00, 00, 000);           // dummy data         lables[0] = "bool";         lables[1] = "int";         lables[2] = "long";         lables[3] = "bool";         lables[4] = "int";         lables[5] = "long";          // dummy data         values[0] = mindate.addmonths(10);         values[1] = mindate.addmonths(10);         values[2] = mindate.addmonths(10);         values[3] = mindate.addmonths(10);         values[4] = mindate.addmonths(10);         values[5] = mindate.addmonths(10);          // bind 2 lists         series[0].points.databindxy(lables, values); 

for column range series:

pointindex = series[1].points.addxy(values2[1], values2[5]); 

right looks this:

enter image description here

how make such looks first picture.

i came solution.

instead of range column make range bar series , set pointwidth 5:

var series = new series {                   name = "s2",                   color = color.lightslategray,                   charttype = seriescharttype.rangebar };  series["pointwidth"] = "5";  chart1.series.add(series); 

than when plotting:

mindate = new datetime(2016, 01, 01, 00, 00, 00, 000);   values2[0] = mindate.addmonths(1);     values2[1] = mindate.addmonths(2);  pointindex = series2.points.addxy(values2[1], values2[1]); 

that give me results want.


Comments

Popular posts from this blog

android - Automated my builds -

how to proxy from https to http with lighttpd -

javascript - jQuery get link id -