Hi all ,
no one has answered this question as there might be many few who actually worked on morris js charts. I checked online but i have also found only limited data and documentation from internet. after so much reserch and tying i got the solution to display morris danut chart in asp.net
below is my solution what i have tried so far , so in future other developer will get an answer to deal with that
http://idevexplorer.com/2014/11/morris-js-chart-in-an-mvc-application/[
^]
above link has got excellent examples given to refer, how to use paramnters and all but they havent shown how to generate dynamically
<script type="text/javascript">
$(document).ready(function () {
Morris.Donut({
element: 'morris-donut-chart',
data: $.parseJSON(Graph()),
resize: true
});
});
function Graph() {
var data = "";
$.ajax({
type: 'POST',
url: 'Home.aspx/GetPiechartData',
dataType: 'json',
async: false,
contentType: "application/json; charset=utf-8",
data: {},
success: function (result) {
data = result.d;
},
error: function (xhr, status, error) {
alert(error);
}
});
return data;
}
</script>
<div class="col-md-3 col-sm-12 col-xs-12">
<div class="panel panel-default">
<div class="panel-heading">
Donut Chart Example
</div>
<div class="panel-body">
<div id="morris-donut-chart"></div>
</div>
</div>
</div>
and in my codebehind i called my webmethod
[WebMethod]
public static string GetPiechartData()
{
using (SqlConnection con = new SqlConnection(ApConfig.GetConectionString))
{
SqlCommand cmd = new SqlCommand("Usp_Getdata", con);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
List<GraphData> dataList = new List<GraphData>();
foreach (DataRow dtrow in dt.Rows)
{
GraphData details = new GraphData();
details.label = dtrow[0].ToString();
details.value = dtrow[1].ToString();
dataList.Add(details);
}
var jsonSerializer = new JavaScriptSerializer();
string data = jsonSerializer.Serialize(dataList);
return data;
}
}
make sure you do use label and value to make it work from class