【问题标题】:How to Create a ZedGraph Static Label如何创建 ZedGraph 静态标签
【发布时间】:2012-10-10 14:32:51
【问题描述】:

我想在图表的右下角添加一个徽标或我的软件名称。我使用了TextObj,但问题是它的位置通过鼠标滚轮改变图形比例来改变。我应该使用另一个对象,但我不知道它是什么。请帮帮我。

【问题讨论】:

    标签: zedgraph


    【解决方案1】:

    这是一个简单的解决方案:

    private void Form1_Load(object sender, EventArgs e)
    {
         GraphPane pane = zedGraphControl1.GraphPane;
         var text = new TextObj("Your Comapany Name Ltd.",(0.6)*(pane.XAxis.Scale.Max), 1.1, CoordType.ChartFraction, AlignH.Left, AlignV.Top);
         text.ZOrder = ZOrder.D_BehindAxis;
         pane.GraphObjList.Add(text);            
         zedGraphControl1.Refresh();
     }
    

    更改 x 和 y 值以定位公司名称。

    编辑:

    您只需将文本对象替换为图像对象即可:

    private void Form1_Load(object sender, EventArgs e)
    {
         GraphPane pane = zedGraphControl1.GraphPane;            
         Image img = Image.FromFile(@"C:\i.jpg");
         var logo = new ImageObj(img, new RectangleF(0.8f, 1.1f, 0.08f, 0.1f), CoordType.ChartFraction, AlignH.Left, AlignV.Top);             
         pane.GraphObjList.Add(logo);
         zedGraphControl1.Refresh();
     }
    

    【讨论】:

    • 解决方案是正确的,但您应该将 "(0.6)*(pane.XAxis.Scale.Max)" 更改为 "0.6" 。因为你应该使用分数。你能找到一种使用徽标而不是文字的方法吗?
    • 好答案。对于右下角,我会使用 New TextObj(sLabel, 0.98, 0.98, CoordType.PaneFraction, AlignH.Right, AlignV.Bottom) - 如果您的文本发生变化,使用 PaneFraction 和 .Right, .Bottom 会更好地保持对齐。
    猜你喜欢
    • 1970-01-01
    • 2010-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多