Tag: charts

wpf工具包图表旋转轴

如何将轴上的文本从水平旋转到垂直? 我不能通过xaml这样做,因为我是在动态创建多个系列,我不知道在控件填充之前我将拥有多少。 我需要显示垂直或倾斜的日期而不是horz。 再次感谢你。

MsChart选择一部分数据并更新图表

我创建了一个程序来读取文本文件并将该文件中的数据显示到DataGridView中; 然后我使用来自此DGV的数据根据​​结果更新“图表”,图表仅包含折线图。 我想要完成的是允许用户选择该数据的一部分,我拖动它的开头和结尾,就像你只想启用x轴一样放大,并根据该选择更新图形,计算此数据子集的平均值。 运用 chart1.ChartAreas[“ChartArea1”].CursorX.IsUserEnabled = Enabled; chart1.ChartAreas[“ChartArea1”].CursorX.IsUserSelectionEnabled = Enabled; 这允许我选择区域并放大,但​​我不确定如何根据选择而不仅仅是缩放来实际更新数据。

Windows窗体图表设置固定混合标签

我想在我的x或y轴上修复我的标签,所以它们总是静态的。 我还想将标签与数字和字符串混合,如图所示。 此外,y轴以-1开头,我怎样才能始终以0开头?

在c#中没有网格线的epplus图表(它是一个Web应用程序)

没有GridLines的图我试图使用epplus和c#在excel文件中创建一个图表。 我能够创建图形,我试图删除图形中的网格线,如图所示。 我找到了在Windows应用程序中执行此操作的解决方案,但我想在Web应用程序中执行此操作,下面是我用于生成图形的代码。 ExcelRange erLossesRangeMacInv = worksheet.Cells[“G5:G10”]; var chartOEE=(ExcelBarChart)worksheetGraph.Drawings.AddChart(“barChartOEE”, eChartType.ColumnClustered); chartOEE.SetSize(300, 300);//Setting size of graph chartOEE.SetPosition(10, 10); // position of graph in excel chartOEE.Title.Text = “OEE”; ExcelRange erLossesRangeOEE = worksheet.Cells[“M5:M10”]; chartOEE.Style = eChartStyle.Style10; chartOEE.Legend.Remove(); chartOEE.DataLabel.ShowValue = true; chartOEE.YAxis.MaxValue = 100; chartOEE.Series.Add(erLossesRangeOEE, erLossesRangeMacInv); 我找到了在Windows窗体中工作的代码。 chartOEE.ChartAreas[“ChartArea1”].AxisX.MajorGrid.Enabled = false; 如何使用epplus和c#在“Web应用程序”中执行此操作。

如何拖动DataPoint并在Chart控件中移动它

我希望能够抓取图表中绘制的数据点并移动它并通过将其拖动到图表控件上来更改其位置。 我怎么能够 .. ..抓住具体的系列点(系列名称=“我的系列”) 释放时,系列点应改变其位置/值 这就像使用拖动事件使系列点可移动一样。 这里的颜色点(点)应该能够移动: 有些图表如devExpress图表执行此任务但我想在正常的MS图表中执行此操作。

MSDN图表实时更改点值?

我想使用MSDN图表来表示我从telnet应用程序获取的实时数据。 出于测试目的,我添加了一个按钮来手动更改图表。 我手动制作了图表,它在X轴上有0到5个点,X上的值不同。该系列由它的默认名称“Series1”命名。 我尝试了以下方法: chart1.Series [ “系列1”] Points.ElementAt(0).SetValueY(40); //什么都没发生 chart1.Series [“Series1”]。Points.ElementAt(1).SetValueXY(1,20); //什么都没发生 。chart1.Series [ “系列1”]点[0] .SetValueY(40); //什么都没发生 chart1.Series [“Series1”]。Points.ElementAt(1).YValues.SetValue(10,0); //什么都没发生 chart1.Series [ “系列1”] Points.Clear(); //删除它应该的所有点。 那么如何在运行时更改数据点条目? -EDIT-如果我使用chart1.Series[“Series1”].Points.ElementAt(0).SetValueY(40);修改一个点chart1.Series[“Series1”].Points.ElementAt(0).SetValueY(40); 并在此之后使用chart1.Series[“Series1”].Points.AddXY(1, 40);添加一个点chart1.Series[“Series1”].Points.AddXY(1, 40); 修改后的点会捕捉到它修改过的地方。 结论是修改确实会改变点Y值,但图形不会刷新。 AddXY()函数似乎是autorefresh。 我似乎找不到手动调用Refresh()的方法。

图表系列点添加不与X轴同步

我尝试通过C#绘制图表,表格为图片。 但是,正如您可以看到日期中的A4数据:7和8/6应保持相同的7和8/6 X轴,这里exception所有它们都留到5和6/6 X轴。 你能帮我解决一下吗? for (int i = 0; i < 14; i++) { string productname = dataGridView1.Rows[i].Cells[0].Value.ToString(); string datetime = dataGridView1.Rows[i].Cells[2].Value.ToString(); int para = Convert.ToInt16(dataGridView1.Rows[i].Cells[1].Value); if (chart_dashboard.Series.IndexOf(productname) != -1) { chart_dashboard.Series[productname].Points.AddXY(datetime, para); chart_dashboard.ChartAreas[0].AxisX.Interval = 1; } else { chart_dashboard.Series.Add(productname); chart_dashboard.Series[productname].Points.AddXY(datetime, para); chart_dashboard.ChartAreas[0].AxisX.Interval = 1; } }

保存更高分辨率的图表而不会弄乱外观

你们都必须原谅我的无知,因为我最近才开始使用C#。 我只是对Windows图表控件有疑问,因为我遇到了一个相当愚蠢的问题。 我有一个程序,其中有一些报告,包括漂亮的窗口图表来表示一些数据。 但是,我一直在将这些图表保存到文件以及各种用途,只需使用以下内容: chart2.SaveImage(savefilename,ChartImageFormat.Png); 我的第一个问题在于,我不确定如何在保存前不先增加图表控件的大小而将其保存为更高的分辨率。 拥有合理质量的图像会很高兴。 第二个问题是当我确实增加图表控件的大小时,可用的操作似乎只能增加实际图表的大小,而不是标签或文本。 如果我可以手动更改所有这些,这不会是一个问题,这就是我对条形图所做的,但有一条线我无法弄清楚如何制作更厚的:饼图上的标签线。 我在下图中画了一个箭头: http://www.bolinger.ca/chart.png 因此,当图表增加到合理的分辨率时,由于没有增加到适当的相对大小,该线几乎不可见。 我觉得应该有办法改变它,但无法弄清楚它会是什么。 再次,原谅我的无知。 如果这两个问题中的任何一个都可以解决,那么我可以轻松地知道这些饼图看起来不错。 谢谢!

可以推荐使用ZedGraph图表库吗?

我正在为我的公司开发一个项目,我需要在研究股票市场的过程中将一些不同类型和平均复杂度的图表集成到C#中。 我在互联网上找到了这个免费的图书馆, ZedGraph 。 如果你碰到它,你建议使用它吗? 它的支持程度如何?

在给定y截距和斜率的情况下绘制图表中的线

我编写了一个程序,根据用户的几个输入值计算最佳拟合线(截距/斜率)。 我已经绘制了每个单独的值,但不确定代码是否给出斜率和y截距的线。 这是斜率: double m = ( aXY.Sum() – ((levels.Sum() * scores.Sum()) / 5)) / (newaX.Sum() – ((powLevels) / 5)); 拦截 double b = meanY – (m * meanX); 绘图点 for (int i = 0; i < levels.GetLength(0); i++) { chart1.Series["Series1"].Points .AddXY(levels.GetValue(i), scores.ToArray().GetValue(i)); } 有任何想法吗? 我绝不是一位专家,而且到目前为止还需要进行一些实验。